本人有一台云主机,是面向全国用户软件,在线生产运营的服务器,之前备份是使用Sqlserver备份向导实现自动循环备份,但由于场景问题,备份数据会越来越多,由于云服务硬盘空间是一定的,增加硬盘空间吧,需要额外加费用,后来经过不断实践,终于实现使用代sql代码,按星期周期来备份,实现代码如下,有需要朋友,请参考:
declare @day int,@sql varchar(2000),@path varchar(500) //声明一个变量
select @day = Datepart(weekday, getdate()-1) //获取当天是星期几?
select @path = 'd:\sqldata\ERP_' + CONVERT(varchar(2), @day) + '.bak' //备份指定数据库
select @sql ='BACKUP DATABASE [ERP] TO DISK = N''@path'' WITH INIT , NOUNLOAD , NOSKIP , STATS = 10, NOFORMAT'
select @sql = REPLACE(@sql, '@path', @path)
execute (@sql)
第一步:
第二步:
第三步
第四步:操作完以上步骤后,就可以实现对应数据库存,从星期一到星期天,周期性的备份了。
当然备份后的*.bak文件,可以用c#代码调用WinRAR压缩一下,然后放到云主机的iis网站的目录下,再通过c#代码检测版本,自动化下载备份到本机电脑,就更妙了。本人使用这种流程方案多年,现在效果非常不错。由于涉及商业技术,自动化下载c#的代码项目,我不上传了,实在需要的网友,可以与我联系。