SQL 2005自动备份与自动删除备份文件

1

点击"SQL Server 外围应用配置器", 打开"功能的外围应用配置器"在里面启用xp_cmdshell,重启SQL服务,使其生效

2

在windows目录下的system32目录里新建"del_oldfiles.vbs" 内容如下:

strDrive = left(WScript.Arguments(0), 2)
strPath =  replace(right(WScript.Arguments(0), len(WScript.Arguments(0))-2),"\","\\") & "\\"
strExtension = WScript.Arguments(1)
intDays = WScript.Arguments(2)
 
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\.\root\cimv2")
Set objConvertedDate = CreateObject("WbemScripting.SWbemDateTime")
 
Set colFiles = objWMIService.ExecQuery("select * from CIM_DataFile where drive='" &_
    strDrive & "' and path='" & strPath & "'")
For Each objFile in colFiles
  objConvertedDate.Value = objFile.CreationDate
  dtCreationDate = objConvertedDate.GetVarDate(LOCAL_TIME)
  If DateAdd("d", intDays, dtCreationDate) < Now and objFile.Extension = strExtension Then
  ' Wscript.Echo objFile.Name & ", "  & DateDiff("d", dtCreationDate, Now) 
   objFile.delete()
  End If
Next

3

在维护计划里新建"备份数据库",跟正常的应用开发拉控件一样,不在此说明!设置好

4

在SQL server 代理内新建作业"删除备份文件"其步骤内容如下:(代码内的F:\backup替换成自己计划维护设定的目录)

exec xp_cmdshell 'cscript.exe del_oldfiles.vbs F:\backup bak 3'

此方法取于http://bbs.csdn.net/topics/340135388 xman_78tom

用法:del_oldfiles.vbs fullpath ext days
fullpath -- 文件所在的完全路径;ext -- 文件的扩展名;days -- 早于多少天
在 SQL Server 中,可以通过 exec xp_cmdshell 'cscript.exe del_oldfiles.vbs d:\backup rar 3' 调用。

5

然后在维护计划内加入"执行SQL server代理作业"任务!

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值