是否可以从SQL Server 2008中删除未使用的SQL代理程序计划?
如果是这样,怎么样?我确定我错过了一些非常明显的东西!
答案 0 :(得分:4)
如果您知道多余的时间表,那么只需拨打sp_delete_schedule
- http://msdn.microsoft.com/en-us/library/ms175050(v=sql.100).aspx - 即可删除
如果您需要获取当前未启用或附加到作业的计划列表,您需要浏览msdb中的sysschedules
和sysjobschedules
表
残疾人工作很容易找到:
select a.schedule_id, a.name, b.name
from msdb..sysschedules a
left join master..syslogins b on a.owner_sid=b.sid
where enabled=0
要查找已启用但未附加到作业的内容:
select a.schedule_id, a.name, a.owner_sid, b.name from msdb..sysschedules a left join master..syslogins b on a.owner_sid=b.sid where a.schedule_id not in (select schedule_id from msdb..sysjobschedules)
我包含所有者名称,因此我可以检查系统日程表(由sa拥有),因为我看不到任何其他方式来识别它们(如果其他人可以,我很想知道)。