Резервное копирование баз в MS SQL

Written by

in

\"\"Для резервного копирования баз данных сервера MS SQL обычно используют SQL Server Agent.

Проблема появляется, когда есть только бесплатная версия MS SQL – Express.

В ней отсутствует SQL Server Agent. И хотя в SQL Server 2008 Express такая служба и есть, но она не запускается, а выдает ошибку SQLServerAgent could not be started (reason: Error creating a new session).
Странно, – оставлять службу, но не позволять ее запускать.

Эту проблему решает простой скрипт:

REM База данных
set DB=DB01
REM Путь до папки хранения бэкапов
set backup_path_local=d:\\backup\\
REM Путь до сетевого хранилища
set backup_path_remote=\\serverbackup\\backup$\\SQL_Database\\
REM Запуск резервного копирования с помощью утилиты Sqlcmd
Sqlcmd -Q \"BACKUP DATABASE [%DB%] TO  DISK = N\'%backup_path_local%%computername%_%DB%.bak\' WITH NOFORMAT, INIT,  NAME = N\'%DB%-Full Database Backup\', SKIP, NOREWIND, NOUNLOAD,  STATS = 10\" -t 60000
REM Перемещение копии в сетевое хранилище
move %backup_path_local%%computername%_%DB%.bak %backup_path_remote%

Нужно только ввести собственные параметры в переменные DB, backup_path_local и backup_path_remote

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *