定时删除过期备份文件

来源:互联网 发布:淘宝网店如何找上家 编辑:程序博客网 时间:2024/05/01 18:06

通过维护工作做的维护计划,向导中有过期选项,经过我的试验确实到过期时间没有删除备份文件,不知道什么原因,2000以前版本是可以的,不知道2008 为什么不可以。想通过SSIS中的FOR EACH 遍历文件夹,获取文件名,通过文件创建属性,在调用文件系统任务来删除过期文件,因为我对SSIS不熟所以没有做成,看了网上很多文章,最终还是不知所以。最终实现还是通过bat来实现的。

BAT的关键语句如下:

@echo off

forfiles /P g:\测试过期删除\test /S /M *.bak /C "cmd /c del /Q @path" /D 0


遍历 g:\测试过期删除\test  " /P g:\测试过期删除\test " 下所有子文件夹/S  中扩展名为*.bak的文件/M *.bak ,执行删除命令/C "cmd /c del /Q @path" ,条件为当天/D 0

BAT文件内容前要加入@echo off

经过测试如果不加@echo off 当语句没有查找到符合条件的记录时,调用BAT文件的包会报错。切记切记

 

接下来的步骤:

1.创建SSIS项目,新建包

2.加入执行进程任务,双击选择处理,在EXECUABLE中选择BAT文件

3.保存包,右键包属性查看包得存放路径

4.打开SSMS,连接中选择智能服务,MSDB中导入包,执行一下没有问题就OK

5.在SQL AGENT里新建JOB ,在步骤类型里选择智能服务,计划里设定要执行的时间间隔就OK了

 

要下班了 写的比较简,没有试出来怎么用SSIS来删除过期文件还是比较遗憾,怎么删除文件倒是试出来了,问题是我有删除条件,不知道怎么办了。好遗憾好遗憾,还好要发工资啦啦啦啦

 


 

 

原创粉丝点击