因服务器安装的SQL Server版本不支持自动定时备份,需自行实现,大概思路为:
- 创建备份数据库的脚本
- 创建批处理脚本执行步骤一中的脚本
- 创建Windows定时任务执行步骤二中的脚本
1. 创建SQL脚本
新建db_backup.sql
文件,填入以下内容。
— 定义需要备份的数据库
DECLARE @backupDatabase VARCHAR(20) = ‘DB_NAME’
— 定义数据库备份文件存放的基础路径
DECLARE @backupBasePath VARCHAR(MAX) = ‘D:/DB_NAME/’
— 定义备份文件名,文件名格式:
DECLARE @backupFileName VARCHAR(50) = NULL
— 获取当前时间戳
DECLARE @backupTime DATETIME = CURRENT_TIMESTAMP
— 处理备份文件名称
SET @backupFileName = @backupDatabase + ‘_backup_’ + CONVERT(VARCHAR(25), @backupTime, 112) + ‘_’ + REPLACE(CONVERT(VARCHAR(25), CURRENT_TIMESTAMP, 114), ‘:’, ”) + ‘.bak’
— 处理完整的备份文件路径
SET @backupBasePath = @backupBasePath + @backupFileName
— 执行备份
BACKUP DATABASE @backupDatabase TO DISK = @backupBasePath