Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Архивирование базы SQL и WinRAR  [new]
Alekseev Sergey
Member

Откуда:
Сообщений: 21
Добрый день.

Ситуация следующая:

Есть Win2k3r2sp2, mssqk2k, winrar.

База SQL бэкапиться следующим степом (Step1, type - tsql):

DECLARE @pathName NVARCHAR(512)
SET @pathName = 'C:\Backup\путь_до_базы_' + Convert(varchar(8), GETDATE(), 112) + '.bak'
BACKUP DATABASE [название_базы] TO DISK = @pathName WITH NOFORMAT, NOINIT, NAME = N'название_базы', SKIP, NOREWIND, NOUNLOAD, STATS = 10

Следующий степ такой (Step2, type - cmdexec):
C:\Scripts\название_базы\SQL_RAR_название_базы.bat


Содержание SQL_RAR_название_базы.bat:


@echo off
"c:\Program Files\WinRAR\Rar.exe" a -m3 -t -ag-YYYYMMDDHHMM \\сетевой_путь\backup\sql\название_базы\ c:\backup\название_базы_*.bak
del c:\backup\название_базы_*.bak


При выполнении step 1 и 2 sql не делает средствами winrar'а архив в сетевой папке. Как только меняю путь на локальный (C:\backup\etc.....) - всё работает.

Насколько помню, SQL2000 коряво работает с unc.

Пробовал маунтить сетевую папку как диск - не помогает. Просто не идёт копирование на удалённую папку.

SQL пишет, что задание выполнено успешно при любом раскладе.

Прошу помочь..
27 авг 09, 15:14    [7586945]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
автор
Насколько помню, SQL2000 коряво работает с unc.


Особенно коряво, если у учетной записи, под которой работает служба сервера нет прав на эту папку и она локальная.

Что даст:

master..xp_cmdshell N'dir \\сетевой_путь\backup\sql\название_базы'

?
27 авг 09, 15:17    [7586969]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Alekseev Sergey
Member

Откуда:
Сообщений: 21
pkarklin,

Access is denied.
NULL


Но позвольте - я даже для эксперимента дал права full для everyone - результат такой же ....
27 авг 09, 15:23    [7587022]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Glory
Member

Откуда:
Сообщений: 104760
Alekseev Sergey
pkarklin,

Access is denied.
NULL


Но позвольте - я даже для эксперимента дал права full для everyone - результат такой же ....

Учтеной записи Local system все равно какие права даны everyone
27 авг 09, 15:24    [7587031]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Alekseev Sergey
Member

Откуда:
Сообщений: 21
Какие-то варианты решения существуют..? Кроме смены юзера сервиса
27 авг 09, 15:28    [7587060]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Glory
Member

Откуда:
Сообщений: 104760
Alekseev Sergey
Какие-то варианты решения существуют..? Кроме смены юзера сервиса

Обратится в Microsoft, чтобы они пересмотрели идеологию прав учетной записи Local system.
27 авг 09, 15:31    [7587077]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Alekseev Sergey
Member

Откуда:
Сообщений: 21
Становится понятно.

Прощу прощения, что задаю вопрос, возможно прямо не относящийся к данной теме - и тем не менее:

Как уважаемое ИТ-сообщество решает вопрос с бэкапом SQL-баз на сетевые папки? Именно в случае использования rar'a..
27 авг 09, 15:33    [7587093]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Glory
Member

Откуда:
Сообщений: 104760
Alekseev Sergey


Как уважаемое ИТ-сообщество решает вопрос с бэкапом SQL-баз на сетевые папки? Именно в случае использования rar'a..

rar тут совершенно непричем. Потому что для работы с сетевыми ресурсами нужно права доступа.
27 авг 09, 15:34    [7587100]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Alekseev Sergey
Member

Откуда:
Сообщений: 21
Я правильно понимаю, что единственный возможный способ решения - запустить службы MSSQL от сетевой (в домене - доменной) учётной записи, чтобы решить эту проблему?
27 авг 09, 15:35    [7587117]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
Alekseev Sergey
Я правильно понимаю, что единственный возможный способ решения - запустить службы MSSQL от сетевой (в домене - доменной) учётной записи, чтобы решить эту проблему?


Да. Или если у Вас поднят AD, дать права самой машине, на которой работает SQL Server.
27 авг 09, 15:36    [7587125]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Glory
Member

Откуда:
Сообщений: 104760
Alekseev Sergey
Я правильно понимаю, что единственный возможный способ решения - запустить службы MSSQL от сетевой (в домене - доменной) учётной записи, чтобы решить эту проблему?

Или создавать архив на локальном диске, а потом уже переносить его на сетевой ресурс другими средствами, которые будут использовать нужные учетные записи
27 авг 09, 15:37    [7587134]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Alekseev Sergey
Member

Откуда:
Сообщений: 21
В таком случае скорее создам уникальную учётную запись с набором необходимых прав специально для MSSQL.

Благодарю Вас за помощь - Вы очень помогли. :beer:
27 авг 09, 15:53    [7587249]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
Alekseev Sergey
В таком случае скорее создам уникальную учётную запись с набором необходимых прав специально для MSSQL.


Создайте учетную запись, например, с локальными правами админа, и назначьте ее службе через EM. Он сам остальное "доделает" с правами и прочим, а то запаритесь...
27 авг 09, 16:00    [7587298]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 33364
Блог
а лучше поменяйте версию сервера, последние позволяют сжимать бэкапы без внешних утилит
27 авг 09, 16:25    [7587441]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
rancid
Member

Откуда: *мск
Сообщений: 114
А еще можно bat-скрипт отдельно запускать.. Планировщиком..
28 авг 09, 05:56    [7588865]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Andret
Member

Откуда: Киев
Сообщений: 84
Народ, что вы там советуете!
1. Надо дать права компьютеру (на учётку DOMAIN\ComputerName$), как и советовали.
2. Про "сетевая служба". Не поможет, так как у нее в отличии от "Локал систем" ещё и ограниченные локальные права.
3. Версия сервера для сжатия должна быть 2008 Enterprise:-)
28 авг 09, 22:00    [7592939]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
shalomb
Member

Откуда: Израиль
Сообщений: 77
Купите прогу SQLBackup но ру Red Gate есть другая контора у них лайсенс 100 зеленых ,прастая прога и копирует на сетевые диски и сжимает ,просто все эти zip.rar. нужно место на диски 3 или4 кратное ,да и потом сжатие идет долго ,потом еще разжимать ,посчитай время на дезастеррекавери .тоска ,а эта прога копирует и жмет 1-2 гига минута.
29 авг 09, 23:38    [7594183]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Gerros
Member

Откуда: Харьков
Сообщений: 501
Я так смотрю, дохрена специалистов собралось... А реально объяснить, что происходит, слабо... Ок, восполню пробел... Итак:
1. Если в джобе написано "backup database ... to <UNC>", то доступ к <UNC> происходит с правами той учётной записи, под которой запущена служба SQL Server.
2. Если в джобе написано "rar -a ... <UNC>", то доступ выполняется с провами той учётной записи, под которой запущена служба SQL Server Agent - как говорится, почувствуйте разницу...
3. "Я правильно понимаю, что единственный возможный способ решения - запустить службы MSSQL от сетевой (в домене - доменной) учётной записи, чтобы решить эту проблему?"
Если дело происходит в домене, то можно первым степом выполнить
"net use <UNC> /USER:<username> <PASSWORD>" - мой любимый вариант для всяких муторных ситуаций, когда надо по-быстрому порешать.
Gloryb
Учтеной записи Local system все равно какие права даны everyone
Не надо лохматить бабушку. Это зависит. Например, от доменных политик, касающихся Everyone.
30 авг 09, 00:35    [7594287]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Glory
Member

Откуда:
Сообщений: 104760
Gerros
Gloryb
Учтеной записи Local system все равно какие права даны everyone
Не надо лохматить бабушку. Это зависит. Например, от доменных политик, касающихся Everyone.

Т.е. вы готовы показать, как Local system получт доступ к сетевому ресурсу ?
30 авг 09, 10:37    [7594576]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
ди2
Guest
как вариант: настроить windows sheduled task который будет *.Bak (который надо предварительно сделать локально) архивировать и переносить
31 авг 09, 09:42    [7595952]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Alekseev Sergey
Member

Откуда:
Сообщений: 21
ди2,

Это не представляется .... простым как минимум, потому что я хочу выполнять степ переноса мгновенно после выполнения собственно бэкапа - с тем, чтобы свести к минимуму возможность выхода из строя сервера с локально хранящимися бэкапами.

Вопрос к ув. Gerros'у - я попробовал в .bat добавить net use unc /user: юзер пароль - и бэкап не выполнился. Либо net use надо именно в самом sql'е записать как степ-exec?
31 авг 09, 11:57    [7596927]     Ответить | Цитировать Сообщить модератору
 Re: Архивирование базы SQL и WinRAR  [new]
Alekseev Sergey
Member

Откуда:
Сообщений: 21
Всем спасибо :) Решил предоставлением папке backup доступа от сервера MSSQL.

Вопрос по net use остаётся только для общего развития..
31 авг 09, 15:45    [7598776]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить