在 SQL2005 数据库中,不可以自动删除过期的备份文件,所以借用第三方插件完成此功能。
-- 方式一:通过 Forfiles 删除指定目录下过期的备份文件
目的:删除目录 i: \sqldataup 中天前的 . bak 文件:
步骤:
1 、定义 FORFILES 批处理脚本如下:
C: \> FORFILES / P i: \sqldataup / M *. bak / C "cmd /C del /Q @path" / d - 5
如果执行成功则返回当前盘符 C: \> 。
-- 如果没有需要删除的文件则返回信息错误 : 用指定的搜索标准没有找到文件。比如:
--C:\>FORFILES /P i:\sqldataup /M *.bak /C "cmd /C del /Q @path" /d -5
-- 错误 : 用指定的搜索标准没有找到文件。
2 、通过计划任务调用批处理脚本如图所示,图太长请看 这里
3 、当然也可以用 SQLAgent 调用 CMDEXEC 完成批处理作业。
方式二:如果在 SQL2008 中因为默认安装 Powershell 1.0 程序,故可以用 Powershell 编写脚本来完成定时删除过期文件。
太多内容,请看文章 http://blog.csdn.net/claro/archive/2009/08/18/4458417.aspx。
89 个解决方案
#1
sf
#2
ss
#3
晕,应该先占沙发再看贴。
#4
支持
#5
sdhylj真快!!
#6
xuexi
#7
这还是看了帖子内容之后的,哼哼。
#8
学习
#9
学习,手动删除文件
#10
学习,谢谢楼主分享
#11
学习
#12
感谢并学习
#13
MARK 学习了
#14
#15
维护计划里面的清除维护
#16
学习 并支持
#17
学习
#18
只不过是个dos命令而已。
#19
学习
#20
JF
#21
学习
#22
学习
#23
3Q
人才啊
人才啊
#24
sf
#25
往后看
#26
收藏了, 好贴, 学习中...
#27
look
#28
发非技术版,貌似错了 。
#29
收藏了, 好贴, 学习中...
#30
JF
#31
learning
#32
在DOS模式下
#33
路过下,
#34
顶阿 没有错 说不定你这个帖子还帮到人了呢.
#35
````顶顶顶
#36
回帖是一种美德!
#37
学习。
#38
..
#39
边接分 边学习
#40
多谢,学习了、
#41
方式之一.
#42
#43
学习学习!!!
#44
做一个定时删除文件
#45
xx
#46
学习
#47
不错不错
#48
cxxcvv
#49
学习,谢谢楼主分享
#1
sf
#2
ss
#3
晕,应该先占沙发再看贴。
#4
支持
#5
sdhylj真快!!
#6
xuexi
#7
这还是看了帖子内容之后的,哼哼。
#8
学习
#9
学习,手动删除文件
#10
学习,谢谢楼主分享
#11
学习
#12
感谢并学习
#13
MARK 学习了
#14
#15
维护计划里面的清除维护
#16
学习 并支持
#17
学习
#18
只不过是个dos命令而已。
#19
学习
#20
JF
#21
学习
#22
学习
#23
3Q
人才啊
人才啊
#24
sf
#25
往后看
#26
收藏了, 好贴, 学习中...
#27
look
#28
发非技术版,貌似错了 。
#29
收藏了, 好贴, 学习中...
#30
JF
#31
learning
#32
在DOS模式下
#33
路过下,
#34
顶阿 没有错 说不定你这个帖子还帮到人了呢.
#35
````顶顶顶
#36
回帖是一种美德!
#37
学习。
#38
..
#39
边接分 边学习
#40
多谢,学习了、
#41
方式之一.
#42
#43
学习学习!!!
#44
做一个定时删除文件
#45
xx
#46
学习
#47
不错不错
#48
cxxcvv
#49
学习,谢谢楼主分享
#50
在
roy_88的博客中也有谈到在DOS下删除的另种方式。
http://blog.csdn.net/roy_88/archive/2007/08/25/1758497.aspx
http://blog.csdn.net/roy_88/archive/2007/08/25/1758497.aspx