SqlServer自动备份、自动压缩、自动删除旧备份
发布时间:2020-12-12 13:03:49 所属栏目:MsSql教程 来源:网络整理
导读:准备工具: SqlServer2008 WinRar : 这个不是必须的,备份时也可以直接设置备份压缩。但WinRar压缩比例稍微高一点。 1.给SqlServer设置维护计划定时备份 这个操作比较简单,按向导新增维护计划即可。 2.自动压缩脚本 c:Progra~ 2 WinRarwinRar.exe a D:b
准备工具:SqlServer2008 1.给SqlServer设置维护计划定时备份这个操作比较简单,按向导新增维护计划即可。 2.自动压缩脚本c:Progra~2WinRarwinRar.exe a D:bakdatabase_buckup_%date:~0,4%_%date:~5,2%_%date:~8,2% d:bakdatabase_*%date:~0,2%_*.bak
备份文件的格式是:database_backup_2015_05_15_010001_5555338.bak, 3.自动删除旧的备份设置一个计划任务,在压缩前把老的备份删除。这里通过bat脚本调用vbs脚本,因为vbs脚本相对好写一点。
cscript d:/bak/autoDeleteOldBak.vbs
const reMainCount = 1 '保留几day
Dim fso,dc,file,files,folder,subfolders,subfolder
set fso=createobject("Scripting.FileSystemObject")
set folder=fso.getfolder("D:bak")
Dim today
today=Now
for each tempFile in folder.files
dim arr
arr=Split( tempFile,"_backup_")
if UBound(arr)>0 then
dim tempDate,diff
tempDate=Cdate( Replace( Left(arr(1),10),"_","-"))
diff= DateDiff("d",tempDate,today)
if (diff>reMainCount) then
fso.deleteFile(tempFile),true
end if
end if
next
set fso=nothing
如果另外有ftp服务器,可以压缩文件后,远程同步到另一台服务器上。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |