Автоматическое создание резервных копий баз данных на SQL Server Express
|
В настоящей инструкции описаны действия, необходимые для автоматического создания резервных копий баз данных на SQL Server Express версии 2005, 2014.
Способ автоматического резервного копирования реализован с помощью планировщика заданий ОС Windows, запускающего задачу по настроенному расписанию. Задача запускает файл сценария, выполняющий создание резервной копии базы данных в файл по заданному пути.
Подготовка файла сценария с командой создания резервной копии базы данных
Команда запуска создания резервной копии базы данных в общем виде выглядит следующим образом:
sqlcmd -S <имя экземпляра SQL-сервера> -E -Q "declare @s varchar(255) set @s='<полный путь к каталогу>\a0data_' + convert(varchar(8), getdate(), 112) + '.bak' backup database A0Data to disk = @s with init, noformat, skip, nounload"
где:
<имя экземпляра SQL-сервера> — имя экземпляра SQL-сервера, на котором находится база данных;
<полный путь к каталогу> — полный путь к каталогу для сохранения автоматически создаваемых резервных
копий базы данных; convert(varchar(8), getdate(), 112) — служебный параметр, задающий формат даты в имени файла резервной копии.
Данное значение подставит в имени файла дату в формате 'ггггммдд'. Такой вариант удобен, когда необходимы ежедневные копии за период более недели и за их количеством на диске следит ответственный сотрудник.
Значение convert(varchar(1), datepart(dw, getdate())) вместо даты подставит в имени файла порядковый номер дня недели (1-7). Этот вариант удобен, когда необходимы ежедневные копии только за неделю, за их количеством на диске следить не требуется, т.к. происходит автоматическая перезапись.
Все параметры строки являются обязательными.
Все пользовательские значения (пути, наименования) должны существовать.
Пример команды запуска
Если для этого же экземпляра Комплекса PMProgress требуется одна копия за каждый день недели и в имени файла достаточно указать порядковый номер дня недели (1-7), то при этих условиях команда запуска будет выглядеть так:
sqlcmd -S localhost\PMPWIN1 -E -Q "declare @s varchar(255) set @s='D:\A0_BackUps\a0data_' + convert(varchar(1), datepart(dw, getdate())) + '.bak' backup database A0Data to disk = @s with init, noformat, skip, nounload"
При успешном выполнении команды будет создан файл «D:\PMP_BackUps\a0data_1.bak», где «1» означает, что копия создана в понедельник. Повторный запуск такой команды в этот же день (либо через неделю) перезапишет
ранее созданный в этот день файл резервной копии. Создание файла сценария
После распаковки архива файл «*.cmd» нужно отредактировать (например, с помощью Блокнота), заменив «localhost\PMPWIN1» и «C:\ProgramData\InfoStroy\PMProgress\PMPWin1\Backups» на собственные значения. Сохранить изменения в файле.
Проверка работы
Для проверки работоспособности необходимо запустить файл сценария «*.cmd» с правами администратора и убедиться, что файл резервной копии сформировался в заданном каталоге. Если файл не сформировался, необходимо проверить все параметры команды в файле сценария.
Cоздание и настройка задачи автоматического резервного копирования в планировщике заданий ОС Windows
Требуется автоматизировать запуск файла сценария, выполняющего создание резервной копии базы данных, по заданному расписанию. Ниже на примере Windows 10 описано cоздание и настройка задачи в планировщике заданий ОС Windows.
![]() Рекомендуем использовать учетную запись «СИСТЕМА» (может выглядеть как «SYSTEM»).
10.1.После нажатия «Изменить» откроется окно поиска учетной записи, где следует нажать «Размещение».
![]() 10.2.В окне «Размещение» выбрать имя текущего компьютера и нажать «ОК».
![]() 10.3.В следующем окне нажать «Дополнительно».
![]() 10.4.Далее нажать «Поиск».
![]() 10.5.В полученном списке нужно найти учетную запись «СИСТЕМА» (может выглядеть как «SYSTEM») и нажать «ОК».
![]() Подтвердить выбор нажатием «ОК».
![]() ![]() На вкладках «Условия» и «Параметры», при необходимости, можно настроить прочие параметы задачи. Для завершения настройки задачи нажать «ОК».
11. Проверить работоспособность задачи можно путем запуска вручную. Для этого найти созданную задачу в списке и запустить её через пункт «Выполнить» контекстного меню. В зависимости от размера выбранной базы данных, через некоторое время по заданному пути должен сформироваться файл резервной копии базы данных. Если файл не сформировался, необходимо проверить и исправить параметры задачи.
|
















