Rose debug info
---------------

Создание бэкапов по расписанию в MS SQL Express

DECLARE @pathName NVARCHAR(512) 
SET @pathName = 'C:\Backup\dbbackups\db_backup_' + Convert(varchar(8), GETDATE(), 112) + '.bak' 
BACKUP DATABASE [test] TO  DISK = @pathName WITH NOFORMAT, NOINIT,  NAME = N'db_backup', SKIP, NOREWIND, NOUNLOAD,  STATS = 10

Этот скрипт создает бекап с именем файла db_backup_YYYYDDMM.bak где YYYYDDMM — это текущая дата.  Дата в имени файла позволит нам создавать каждый день бекап в новом файле. Запустите и проверьте что бекап действительно создается такой какой вам и нужен. Этот скрипт сохраняем в какой-нибудь папке под именем  sqlexpressbackups.sql, предположим C:\Backup\. В этой же папке создадим исполняемый файл backup.bat, следующего содержания:

REM Удалить файлы старше 15 дней
ForFiles /p "C:\Backup\dbbackups" /s /d -15 /c "cmd /c del @file"
REM Создание бэкапа БД MSSQL
sqlcmd.exe -S (local)\SQLEXPRESS -i C:\Backup\sqlexpressbackups.sql
Поделиться
Отправить
 61   2021   sql backup win