Авг 10

Автоматический бэкап MS SQL Express базы

Опубликовано в MSSQL

Автоматический бэкап MS SQL Express базы

Microsoft SQL Server Express — это freeware версия SQL Server, соответственно, она имеет ряд ограничений. Один из главных недостатков бесплатной версии, пожалуй, отсутствие возможности делать бэкапы штатными средствами. Но работать без резервного копирования — не вариант. Что же делать? Мы предлагаем простое решение, которое поможет сохранить нужные данные.

Процесс создания резервной копии MS SQL Express делится на два этапа:

  1. Создание файла backup.bat с командами Windows.
  2. Создание MS SQL скрипта backup.sql, в котором находятся команды для резервного копирования базы.

Итак, что же содержит файл backup.bat?

DECLARE @pathName NVARCHAR(512)
SET @pathName = ‘D:\mssqlbackup\db_backup_’ + CONVERT(VARCHAR(8), GETDATE(), 112) + ‘.bak’
BACKUP DATABASE [db_name] TO DISK = @pathName WITH NOFORMAT, NOINIT, NAME = N’db_backup’, SKIP, NOREWIND, NOUNLOAD, STATS = 10

@pathName — указывает директорию и имя файла. В нашем примере будет создан бэкап db_backup_10082011 (если создавать бэкап 10.08.2011)

Теперь начинка файла backup.sql.

sqlcmd -S SERVER -U USER -P PASSWORD -i backup.sql
«c:\Program Files\WinRAR\Rar.exe» a -m2 d:\mssqlbackup\db_backup_%date%.rar d:\mssqlbackup\db_backup_*.bak
del d:\mssqlbackup\db_backup_*.bak

Вместо SERVER необходимо ввести адрес сервера, вместо USER, соответственно, имя пользователя, ну а вместо PASSWORD, как вы уже поняли, пароль. 

Скрипт backup.sql также архивирует базу данных.

Теперь в Windows планировщике нужно создать задание, раз в сутки (можно и чаще/реже) запускать файл backup.bat

Один комментарий на “Автоматический бэкап MS SQL Express базы”

  1. wrte:

    перепутали содержание bat и sql файлов в описании.



Обратные ссылки

You must be logged in to post a comment.