Скрипт автоматического бекапа базы данных Microsoft SQL Server 2005 с архивированием и копированием БД на другой сервер

скрипт для автоматического бекапа базы данных Microsoft-SQL-Server-2005

Для того, что бы сделать бекап базы данных SQL Server 2005 нужно выполнять такой скрипт

Сделаем бекап двух БД, которые есть, это doc  и mexp, создадим bat файл под названием back__.bat


set DIR_BACKUP=D:\Mega_backup\backupMSSQL_%date%\
set NAME_PC=server
md %DIR_BACKUP%
osql -S %NAME_PC% -E -Q «BACKUP DATABASE doc TO DISK = ‘%DIR_BACKUP%\doc.bak‘ with init»
md D:\Mega_backup\backupMSSQL_%date%
md \\10.0.0.200\sql\backupMSSQL_%date%
Echo End wait

set DIR_BACKUP=D:\Mega_backup\backupMSSQL_%date%\
set NAME_PC=server
md %DIR_BACKUP%
osql -S %NAME_PC% -E -Q «BACKUP DATABASE mexp TO DISK = ‘%DIR_BACKUP%\mexp.bak’ with init»
md D:\Mega_backup\backupMSSQL_%date%
md \\10.0.0.200\sql\backupMSSQL_%date%
Echo End wait

start winrar a \\10.0.0.200\sql\backupMSSQL_%date%\%date%.rar D:\Mega_backup\backupMSSQL_%date%\*.*

rem //Строчка внизу архивирует базы, которые мы создали скриптом

%NAME_PC% - переменная, которая содержит имя копьютера

osql -S %NAME_PC% -E -Q «BACKUP DATABASE mexp TO DISK = ‘%DIR_BACKUP%\mexp.bak’ with init» собственно скрипт запуска бекапирования БД mexp TO DISK = ‘%DIR_BACKUP%\mexp.bak

TO DISK = ‘%DIR_BACKUP%\mexp.bak сохраним на диск с таким названием в папку %DIR_BACKUP%

\\10.0.0.200\sql\backupMSSQL_%date% расшареная папка на другой машине, с правами доступа для пользователя, который выполняет скрипт бекапа, как правило это админский пароль и если машина находится в домене, то проблем не должно быть.

\\10.0.0.200\sql\backupMSSQL_%date%\%date%.rar — как назовем файл, в данном случае создастся файл с датой запуска и расширением *.rar

Сохраняем скрипт и добавляем его в планировщик заданий. Добавляем на выполнение на пол первого ночи

Планировщик заданий

Сначала мы бекапируем на локальный диск, а потом по сети архивируем в расшареную папку на другом компьютере.

Второй скрип делается для того, что бы зачистить локальные копии, то есть папки D:\Mega_backup\backupMSSQL_%date%\

del /Q D:\Mega_backup\backupMSSQL_%date%\
Ну запускаем его гораздо позже после запуска первого скрипта
/Q — соглашаться с удалением при запуске команды

Готовые скрипты можна взять здесь