Для автоматизации снятия бэкапов баз данных предлагаю рассмотреть скрипт для создания заданий для агента от Ola Hallengren.

В первую очередь необходимо скачать задания в виде скрипта с сайта
https://ola.hallengren.com/

Выполнить скрипт на базе. После этого в списке заданий агента появятся задания:

Далее эти задания останется только настроить и мы начнем эту
настройку с задания, которое нацелено делать полный бэкап системных баз данных — «DatabaseBackup — SYSTEM_DATABASES — FULL». Щелкаем два раза по этому заданию в списке заданий, открывается следующе окно, там слева выбираем «Steps» и в списке шагов щелкаем два раза по единственному шагу:

Открывается окно, в котором можно задать опции, с которыми будет производится полный бэкап баз/базы данных.

Здесь я рекомендую изменить значение параметра @Directory на директорию (обязательно на отдельном диске), в ней будут размещены файлы бэкапа, которые будут получены в результате выполнения этого задания. Остальные значения можно оставить по умолчанию. Нажимаем кнопку «ОК».

Слева переходим на пункт «Shedules», внизу нажимаем кнопку New…»

Выходит окно:

Полный бэкап системных баз данных в моем случае настроен два раза в неделю, в среду и в воскресенье, в 23.20
Можно заполнить расписание по моему примеру и нажать «ОК».
Затем жмем ещё раз «ОК», всё задание настроено.

Далее желательно его проверить, всё ли правильно настроено и будет ли оно выполняться. Для этого нужно щелкнуть по заданию и выбрать «Start Job at Step…» появится форма на которой будет видно процесс выполнения задания:

Процесс выполнения должен завершиться без ошибок:

Следующее задание, которое нужно настроить это: «DatabaseBackup — USER_DATABASES — FULL». Настраиваем его по аналогии с первым, только Job Step на этот раз будет:

Здесь я изменил два параметра, дефолтные значения которых мне не подошли. Первый параметр это @Databases, он может принимать следующие параметры:

По умолчанию там было значение: USER_DATABASES. Которое дает команду делать полный бэкап всех пользовательских баз данных. Я изменил этот параметр на AKUZDB, так как мне нужно делать бэкап только этой базы данных. А также, как и в предыдущем задании, я изменил значение параметра @Directory на путь по которому будут размещаться файлы бэкапа созданные в результате задания. Далее жмем «ОК» и переходим к расписаниям (Shedules).

Нажимаем «New…» и создаем расписание для создания полного бэкапа базы данных AKUZDB:

В моем случае полный бэкап базы данных будет создаваться один раз в неделю, в субботу, в 1:23 ночи. Жмем «ОК», затем ещё раз «ОК». После настройки задания, его, также, как и задание для бэкапа системных баз данных, нужно проверить. Щелкнуть правой кнопкой по заданию «DatabaseBackup — USER_DATABASES — FULL» и выбрать «Start Job at Step…». Задание, также, как и предыдущее, должно завершиться успешно.


Следующее задание, которое нам надо настроить, это «DatabaseBackup — USER_DATABASES — DIFF».

Для примера, вот мой Job Step этого задания:

Это расписание:

Данное задание, создание разностного бэкапа БД, я настроил на ежедневное выполнение в 3 часа ночи.
После настройки этого задания, не забудьте, также, проверить его работоспособность, как и в случае с настройкой предыдущих заданий.

Последнее задание, которое нам надо настроить это: «DatabaseBackup — USER_DATABASES — LOG».

Job Step этого задания будет выглядеть так:

Расписание так:

В соответветствии с этим расписанием, бэкап лога транзакций будет делаться каждый час.
Не забудьте его, также, как и предыдущие задания после настройки проверить.

Настройка автоматического снятия бэкапов БД по расписанию завершена!