SQL代理历史logging设置不被保存

我正在使用安装了SQL 2K8 R2的Win 2K3 R2 + SP2。

我试图设置SQL代理历史logging,以保持1周的日志。 所以这是我做的:连接后,我右键单击SQL Server代理并select属性 。 之后,我select历史 。 然后我发现没有checkbox被选中。 然后select第二个checkbox(删除代理历史:)。 并将周的值更改为1.然后单击确定

之后,我重新看到没有任何改变。

如果这还不够,有时当我试图查看一些特定的工作的历史,它超时。

我感谢任何帮助。

谢谢@Pradeep我已经在日常维护工作中添加了两个步骤,这里是任务的脚本。

清除备份历史logging(优化备份速度)

declare @lastweek date; select @lastweek = CONVERT(DATE,DATEADD(WEEK,-1,GETDATE())); EXEC MSDB.DBO.SP_DELETE_BACKUPHISTORY @oldest_date = @lastweek; 

为了清除作业logging,我必须使用游标。

 declare @lastweek date select @lastweek = CONVERT(DATE,DATEADD(WEEK,-1,GETDATE())); DECLARE jobs_cursor CURSOR FAST_FORWARD FOR select job_id from msdb.dbo.sysjobs DECLARE @job_id UNIQUEIDENTIFIER OPEN jobs_cursor FETCH NEXT FROM jobs_cursor INTO @job_id WHILE (@@fetch_status <> -1) BEGIN IF (@@fetch_status <> -2) BEGIN EXEC msdb.dbo.sp_purge_jobhistory @job_id = @job_id, @oldest_date = @lastweek; END FETCH NEXT FROM jobs_cursor INTO @job_id END CLOSE jobs_cursor DEALLOCATE jobs_cursor GO 

希望这有助于任何人也需要这个。

这是MS Connect上的一个BUG。 即使我可以重现这一点。 选中该checkbox后,将清除指定date的数据,但该选项不会保持选定状态。 所以当你select它时只清除一次数据,然后点击确定。 您可以安排将执行sp_delete_backuphistory和sp_purge_jobhistory的作业作为解决方法。