Имя: Пароль:
IT
 
Как дать права на запись SQL Server в расшаренную папку
,
0 Admin_Net_1C
 
04.11.11
08:00
Народ помогите плиз, гугло яндекс не помог ) Ситуация: есть основной сервер Win 2003 Ent + SQL Server 2008, есть резервный Win 2008 Ent + SQL Server 2008. Каждую ночь бэкап базы 1С средства SQL Server на основном сервере, потом батником копирование бэкапа на резервный. Хочу чтобы бэкап сразу записывался и на основном и на резервный в расшаренную по сети папку. На основном сервере SQL Server запущен под учеткой SYSTEM. На резервном расшарил папку для бэкапов, но доступ только под учеткой Администратор, не хочу чтобы был доступ к этой папке всем по сети. Как дать права на запись в расшаренную папку резервного сервака для SQL Server с основного сервака?
1 ДенисЧ
 
04.11.11
08:02
Запусти агента под учёткой, у которой есть права на запись в ту папку..

И попрощайся с бекапами в сети...
2 Admin_Net_1C
 
04.11.11
08:14
(1) SQLAGENT на обоих серваках запущен от имени Администратор

"И попрощайся с бекапами в сети..." - всмысле?
3 DmitrO
 
04.11.11
08:15
Бекапит сам SQL Server, поэтому его нужно запускать от учетной записи имеющей права на запись в сетевой ресурс.
4 Admin_Net_1C
 
04.11.11
08:16
(3) Хреново, не хочу запускать сам SQL Server под учеткой админа, устраивает как есть под SYSTEM
5 ДенисЧ
 
04.11.11
08:18
(3) бекапит агент. По крайней мере - в ранних версиях. Что там натворили в 2008-м не знаю
6 Sammo
 
04.11.11
08:18
(4) Тогда делай бэкап локально и потом виндовым шедулиром копируй куда надо. Только лучше копировать, тогда бэк-ап есть на сервере в быстром досутпе + в сети для надежности.
7 DmitrO
 
04.11.11
08:24
(4)сделай отдельную учетную запись для SQL сервера
(5)в каком сервере бекапит агент? O_o
8 Admin_Net_1C
 
04.11.11
08:26
(6) в данный момент так все и делается, только в последние несколько дней вываливается ошибка в скрипте бэкапа типа "не могу получить доступ к файлу <имя бэкапа>", хотя если вручную запускаем из Management Studio, то все отрабатывает без проблем
9 Admin_Net_1C
 
04.11.11
08:27
(7) где? на резервном серваке?
бэкап выполняется на основном серваке job-ом
10 DmitrO
 
04.11.11
08:29
(9)доменную сделай
11 ДенисЧ
 
04.11.11
08:31
(7) в 2000м - точно
12 DmitrO
 
04.11.11
08:33
(11)ты ведь ошибаешься :)
13 Admin_Net_1C
 
04.11.11
08:34
(10) домена нет, сетка одноранговая
14 ДенисЧ
 
04.11.11
08:35
(12) неа. Опыт, аднака... Была такая же идея... Дал агенту права на сеть, а серверу нет. Бекап пошёл...
15 DmitrO
 
04.11.11
08:37
(11)Бекап делается командами T-SQL BACKUP DATABASE и BACKUP LOG. T-SQL может исполнять только MSSQL server. Доступ к файлам баз данных MSSQL имеет только процесс sqlsrv.exe он их открывает эксклюзивно.
16 DmitrO
 
04.11.11
08:40
(13)Плохо. Тогда попробуй сделать учетные записи на обоих серваках с одинаковым именем и паролем.
17 ДенисЧ
 
04.11.11
08:41
(15) Я ж говорю - проверял...
Хотя... Вспомнил, там был 7й сервер..
18 Admin_Net_1C
 
04.11.11
08:43
(16) учетки Администратор на обоих серваках с одинаковым паролем
19 Admin_Net_1C
 
04.11.11
08:47
(15) судя по инфе в сети, так и есть, бэкап выполняет MSSQL Server, а не агент, а он на основном серваке запущен под учеткой SYSTEM, соответственно у этой учетки нет доступа к резервному серваку....мда...засада

Ладно, всем спасибо за обсуждение, буду ковырять на предмет почему не создается бэкап job-ом по расписанию
20 DmitrO
 
04.11.11
08:52
(18)Я говорю сделай новую учетну запись с именем например "MSSQL" на каждом сервере, укажи им одинаковый пароль.
На первом сервере дай ей привелегии "Вход в качестве службы" и "Вход в качестве пакетного задания", запускай от нее MSSQL и агента.
На втором серваке сделай доступ к сетевому ресурсу для этой учетной записи.
21 Admin_Net_1C
 
04.11.11
08:56
(20) ок, идею понял, спасибо
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.