大体步骤
- 在sqlserver上做一个计划任务,每小时(或每天)备份一下到本地
- 在局域网的另一台机器上共享出一个文件夹出来
- 写一个copy的程序,每小时执行一次copy任务,把bak文件copy到另一台机器
- 利用任务计划自动删除指定日期的SQLServer备份文件
我试过直接在共享文件夹生成备份文件,但是提示找不到路径,用程序copy就可以,所以才选择了这样多走一步
- 备份计划任务
新建一个作业
从常规、步骤、计划依次填写,其中,新建步骤的sql语句为
declare @name varchar(250)
set @name = 'D:/HourBak/数据库名称'
+ CONVERT(varchar(6),GETDATE(),112)
+ LEFT(CONVERT(varchar(100), GETDATE(), 8),2)
+ '.bak'
BACKUP DATABASE[数据库名称] TO DISK = @name
删除bak
参考:https://blog.csdn.net/u012072356/article/details/79150834