SQL Server维护计划清理任务

时间:2016-01-31 22:09:00

标签: database sql-server-2012 database-backups windows-server-2012-r2 maintenance-plan

我在WinServer 2012 R2上使用SQL-Server 2012(SP2)。我创建了一个维护计划,用于备份我的数据库并删除超过2天的报告文件和备份文件。

我的问题是维护计划不会删除超过2天的文件。这些文件在5或6天后也不会被删除。备份经过验证和压缩。

我拥有该目录的权限(代理程序在LocalSystem下运行),在“文件扩展名”下的任务属性中,我尝试将名称设置为不带和带有点,例如“.bak”,“bak”和“* .bak”但没有任何作用。我改变了任务的顺序,没有任何作用。

但我总是得到成功的消息。那么这里有什么问题?

2 个答案:

答案 0 :(得分:0)

只是为了澄清一下,您是否尝试运行脚本(即.bat)通过SQLCMD处理其中的一部分,并通过任务计划程序调用该脚本?从您的问题来看,听起来您已经在SQL Server中设置了维护计划,但正在尝试设置"任务"称之为(任务计划程序),而不是" Job" (SQL Agent),如果不是这样,我很抱歉。

通过SQL代理(SQL Server内部等效的任务调度程序)完成此操作会更加整洁。一旦有了Maintenance Paln,您就可以通过Management Studio界面进行测试,轻松添加代理作业。

如果您正在运行任务计划程序任务来调用脚本,那么您可能会获得成功"因为任务启动了您的脚本,但脚本没有设置为正确处理SQLCMD调用的返回。

答案 1 :(得分:0)

我试图用不同的方法解决它,但没有办法,我发现最快的方法是使用 .bat 删除它们并安排一个每晚执行的 Windows 任务。

这只蝙蝠在过去 3 天内清除了:

FORFILES /P "C:\Directorio" /S /D -3 /c "CMD /c DEL /Q @PATH"