MSSQL. Создание задания для бэкапа

Предположим, что имя базы данных my_db

Задание создаетеся в базе msdb

USE msdb;
GO

Создаем новое задание:

EXEC dbo.sp_add_job @job_name = N’Daily my_db Backup’;
GO

Создаем шаг задания:

EXEC sp_add_jobstep
   @job_name = N’Daily my_db Backup’,
   @step_name = N’Backup database’,
   @subsystem = N’TSQL’,
   @command = N’DECLARE @filename NVARCHAR(256) \
      SET @filename = »/var/opt/mssql/backup_data/trade_» + FORMAT(GETDATE(), »yyyy-MM-dd-HHmmss.bak») \

      BACKUP DATABASE my_db \
      TO DISK = @filename \
      WITH NOFORMAT, NOINIT, NAME = »my_db-full», SKIP, NOREWIND, NOUNLOAD, STATS = 10′,
   @retry_attempts = 5,
   @retry_interval = 5;
GO

Суффикс «-full» говорит о том, что создается полный бэкап.

Создаем расписание:

EXEC dbo.sp_add_schedule
   @schedule_name = N’Daily my_db Backup’,
   @freq_type = 4,
   @freq_interval = 1,
   @active_start_time = 233000;
USE msdb;
GO

Подключаем расписание к заданию:

EXEC sp_attach_schedule
   @job_name = N’Daily my_db Backup’,
   @schedule_name = N’Daily my_db Backup’;
GO

Добавление задания на сервер:

EXEC dbo.sp_add_jobserver
   @job_name = N’Daily my_db Backup’,
   @server_name = N'(local)’;
GO

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *