Backup SQL на сетевой диск #648258


#0 by Tanis
Добрый день! Подскажите, пожалуйста, как правильно сделать сохранение бэкапов на сетевой диск. SQL 2005.
#1 by shuhard
бат файлом/шагом плана с локального
#2 by Tanis
т.е?
#3 by Tanis
Я в скул запускаю USE master EXEC sp_addumpdevice 'disk', 'Nw1', '\Комп1C_Backup' Он подключается в бэкап - девайсы, но потом при попытки входа на него пишет System.Data.SqlClient.SqlError: Cannot open backup device 'Nw1(\Комп1C_Backup)'. Operating system error 1326(Вход в систему не произведен: имя пользователя или пароль не опознаны.). (Microsoft.SqlServer.Smo)
#4 by Heckfy
Запусти SQL под сетевой службой. Сетевой службе дать права модифай на сетевой каталог.
#5 by Господин ПЖ
local system не умеет работать с сетью
#6 by Heckfy
И это, удобнее намного планами обслуживания пользоваться. :)
#7 by Иде я?
ДЕлай бакап в локальный файл и потом батников копируй
#8 by ssh2012
добавление к - Бэкап создавай с помощью планов обслуживания (maintance plan), 1 шаг - создание бэкапа, 2 запуск bat файла, который выполняет копирование
#9 by Heckfy
Вот зачем забор городить, если скуль сам умеет на сеть сливать. ЗЫ: Кстати, базы тоже можно на сетевом ресурсе разместить.
#10 by Sammo
Делай на локальный + отдельная job-а с копированием в сеть. Плюс - есть локальный архив, если грохнут базу - не надо копировать из сети
#11 by ДенисЧ
Правильно. Лучше всего базы в сети держать... Ещё раскидать на несколько...
#12 by ssh2012
Да в облака сразу базы, чего там
#13 by ZanderZ
сеть отвалиться останешься без копии
#14 by Tanis
Копии будут, как тогда из SQL сливать в сеть.
#15 by Tanis
пошагово может кто-нибудь написать? для чайников
#16 by Heckfy
Домен есть? И там и там винда?
#17 by Kavar
Делаешь задание и бэкапиш базу на локальный диск. затем батником архивируешь и перемещаешь в сеть. все.
#18 by pessok
в написать все и даже больше, о чем тут еще полемика?
#19 by pessok
какой ужас...
#20 by pessok
fix: в написано
#21 by Smallrat
делаешь план обслуживания с сохранением в локальный каталог. прописываешь его в планировщик заданий killdateparam можно взять тут: в итоге на локальном диске будут архивы десятидневной давности и в сети все чтобы были.
#22 by Maxus43
в maintance plan всё сделать, зачем мозг выносить? там при указании куда делать бэкап добавляем сетевой диск, так же указывается и там, сколько по времени их хранить, и много чего другого в планах мышкой сделать не напрягая мозжечек излишними флуктуациями
#23 by fisher
Служба сиквела должна стартовать под доменной учеткой с правами на сетевой ресурс
#24 by Maxus43
юзера для сетевого диска указывать там же . Что-то вы господа всё усложняете
#25 by Оболтус
Я тоже батниками настроил.
#26 by Maxus43
+ поправка, юзера не надо, только путь к шаре. эзер скл агента используется конечно
#27 by fisher
:) Ну дык см.
#28 by Maxus43
да я ругался что батники, скрипты и т.д. вешают... штатными средствами всё легче и веселей)
#29 by olegves
поиск на sql.ru "backup базы на сетевой диск" получишь вариантов кучу и выбирай, что хочешь
#30 by Tanis
не работают пока просмотренные варианты, по настройке скул с сайтов по скул
#31 by Оболтус
Батники хороши тем, что имеем универсальный механизм и для SQL Express.
#32 by Tanis
Добрый день! Можно поподробнее о настройке maintance plan? Как там настроить Бэкап и его слив в сеть.
#33 by MaxS
Можно уточнение по этому скрипту, который удаляет всё, что старше 10 дней? Если бэкап сломался и не делается, а удаление исправно работает, через 10 дней получим полное отсутствие бэкапов?
#34 by Smallrat
хороший вопрос... по идее, если сломается бекап - у нас останется всё на сетевом диске. а если сломается сетевой диск... гмм. надо наверное дописать по кодам возврата успешного копирования
#35 by Smallrat
xcopy /d /e d:1C_Arhiv*.* \srv_backup1C_Arhiv if errorlevel 1 goto exit killdateparam.vbs /path:"d:1C_Arhiv" /killdate:10 /recur:true :exit
#36 by Tanis
а по настройке  maintance plan?
#37 by Smallrat
#38 by Tanis
Спасибо! Только это не совсем то, что просил. Бэкапы настроены, в JOB. Меня интересует их архивация и сохранение в сеть (или копирование). Авторы выше, писали что это все можно сделать в Планах.
#39 by Tanis
а в целом полезная ссылка.
#40 by Минона
Создаете юзера SQLBackup, желательно админом сделать на сетевую папку этому юзеру даете полные права (у вас домен или что?) На SQL сервере идёте сюда: Ищем "Агент SQL Server" (или по аглицки) Свойства - Вход в систему - С учетной записью тут указываем нашего юзера SQLBackup и вводим пароль перезапускаем службу, запускаем backup и проверяем
#41 by Tanis
Да домен. А запуск службы самого SQL, от системной делать? я пробовал запускать службу SQL от своей учетки, тогда Backup devices устанавливается на сетевой диск и работает. Но не стартует агент сервера. А если агента запустить с Админской учеткой, то Бэкап сразу из Job настраивать?
#42 by Минона
Бэкап настраивать в maintance plan (планы обслуживания) В таком случае создаются Jobs (задания), они как раз и видны если смотреть в "SQL Server Management Studio" внизу у Агента. Вот как раз они и будут запускаться под логином службы "Агент SQL" От кого запущен сам SQL - это то от чьего имени будет работать сам движок и ручные запросы. А Задачи запусает Агент (по расписанию).
#43 by Минона
+ Запустите сам SQL тоже под записью юзера SQLBackup. Меньше проблем будет.
#44 by Tanis
А не лучше чтоб SQL работал по системной? А то говорят, что может учетку выбивать, если под учеткой запускать.
#45 by Минона
4 года - полет нормальный по крайней мере у вас ручные запросы и задания будут работать одинаково - удобнее для отладки
#46 by Tanis
Хорошо, спасибо. Вечером буду пробовать, когда все покинут базы. И если системщики дадут запуск SQL от учетки.
#47 by Оболтус
У меня такой скрипт: Получаем текущую дату в sDateTime: for /f "delims=." %%i in ('wmic.exe OS get LocalDateTime ^| find "."') do set sDateTime=%%i echo %sDateTime% Устанавливаем путь к sql скрипту, который будет выполняться для копирования (в Экспрессе нет плана, если не Экспресс, то это не актуально): Устанавливаем каталог для архивов и имя базы (для понятного наименования файла): set sDir=D:!SQL backuplocal echo %sDir% Выполняем sql инструкцию: sqlcmd -S.SQLExpress -i%sScriptBackup% Упаковываем архив в 7-zip: "C:Program Files7-Zip7z.exe" a "%sDir%%sNameBase%%sNameBase%_%sDateTime%.7z" "%sDir%%sNameBase%%sNameBase%.bak" Если архив существует, то удаляем архив: if exist "%sDir%%sNameBase%%sNameBase%_%sDateTime%.7z" del "%sDir%%sNameBase%%sNameBase%.bak" Копируем в каталог сети:
#48 by Оболтус
SQL скрипт: *АРХИВ*/ --для удобства выносим имя базы в константы --генерим имя архивной базы и заменяем : на - в имени --записываем команду в строку SET @sql = 'BACKUP DATABASE ' + '[' + @DBname + ']' + 'TO DISK = N'+''''+ @Dir+@backupname + '.bak''' + ' WITH NOFORMAT, INIT,  NAME = N'+''''+@DBname+'-Full Database Backup'''+', SKIP, NOREWIND, NOUNLOAD,  STATS = 10' Use [Test_1C] exec sp_msforeachtable N'UPDATE STATISTICS ? WITH FULLSCAN'/*статистика*/ go DBCC UPDATEUSAGE ([Test_1C]) go DBCC FREEPROCCACHE/* очистка кеша выполнения запросов*/ go sp_msforeachtable N'DBCC DBREINDEX (''?'')'/*реиндексация индексов*/ go /*дефрагментация индексов*/ /*sp_msforeachtable N'DBCC INDEXDEFRAG ([Test_1C], ''?'')'*/ Use [Test_1C] SET NOCOUNT ON; -- Conditionally select tables and indexes from the sys.dm_db_index_physical_stats function -- and convert object and index IDs to names. SELECT    object_id AS objectid,    index_id AS indexid,    partition_number AS partitionnum,    avg_fragmentation_in_percent AS frag WHERE avg_fragmentation_in_percent > 10.0 AND index_id > 0; -- Declare the cursor for the list of partitions to be processed. DECLARE partitions CURSOR FOR SELECT * FROM #work_to_do; -- Open the cursor. -- Loop through the partitions.        FROM sys.objects AS o        JOIN sys.schemas as s ON s.schema_id = o.schema_id        WHERE object_id = @objectid AND index_id = @indexid; -- 30 is an arbitrary decision point at which to switch between reorganizing and rebuilding. -- Close and deallocate the cursor. -- Drop the temporary table. GO DBCC shrinkdatabase(N'Test_1C', TRUNCATEONLY); /*усечение всей базы*/ CHECKPOINT; /*Записывает все данных из буферного кэша в текущей базе данных на диск*/ use [Test_1C] DBCC SHRINKFILE (N'Test_1C', 101); /*усечение только файла данных до размера 101 мб*/ use [Test_1C] DBCC SHRINKFILE (N'Test_1C_Log', 0); /*усечение только файла транзакций до размера 0 мб*/ CHECKPOINT; /*Записывает все данных из буферного кэша в текущей базе данных на диск*/
#49 by Tanis
Запуск с SQL агента с админской учеткой домена не помог, пишет отказано в доступе. Под локальной (самого компа) админской учеткой не запускается. службы SQL и SQL агент, не запускаются вместе под одной админской учеткой домена.
#50 by Tanis
Видимо придется саму службу SQL запускать под админской учеткой, но как тогда агента под ней запустить. А может еще какая-нибудь служба не запущена. Несколько служб относящиеся к SQL почему-то отключены.
#51 by Оболтус
Кстати, а кто что может о таком скрипте сказать: net session /delete /y (обрываем сессии) net stop /y server (что бы подключится не могли) C:WINDOWSsystem32 askkill.exe /F /IM 1cv8.exe (прибиваем теминально запущенные 1с(если есть такие)) C:arh1c.bat net start /y server (запускаем службу сервер) Подойдет для архивирования 7-ных баз (терминала нет, SQL и расшаренная папка). Или это только для терминала?
#52 by Tanis
На сколько критичен запуск SQL и SQL агента под разными учетками?
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С