在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
因服务器安装的SQL Server版本不支持自动定时备份,需自行实现,大概思路为:
1. 创建SQL脚本新建 -- 定义需要备份的数据库 DECLARE @backupDatabase VARCHAR(20) = 'DB_NAME' -- 定义数据库备份文件存放的基础路径 DECLARE @backupBasePath VARCHAR(MAX) = 'D:/DB_NAME/' -- 定义备份文件名,文件名格式:<DB>_backup_<yyyyMMdd>_<HH:mm:ss.SSS>.bak 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 脚本内容比较简单,这里就不展开说了。详情可查看:BACKUP (Transact-SQL)。 到这里已经可以使用脚本对数据库进行备份,但仍需手动执行脚本,无法实现自动定时备份的需求。 2. 创建批处理脚本新建 sqlcmd -S localhost -U sa -P 123 -i ./db_backup.sql -o ./db_backup.log 以下为使用到的各个选项的解释: sqlcmd -S <数据库连接地址> -U <数据库登录名> -P <数据库密码> -i <要执行的脚本文件> -o <执行日志文件> 更多选项请执行 双击执行批处理文件,如果没有报错且正常输出日志文件,则说明批处理脚本创建成功。 3. 创建Windows任务计划使用
完成以上步骤后即创建任务成功,然后选中新创建的任务,点击右键选择运行,可测试任务是否可正常执行。 到此这篇关于SQL Server使用脚本实现自动备份的思路详解的文章就介绍到这了,更多相关sqlserver自动备份内容请搜索极客世界以前的文章或继续浏览下面的相关文章希望大家以后多多支持极客世界! |
请发表评论