我在SQL Server代理中有一份工作。现在,我看到此工作已禁用。多个人可以登录到服务器并可以修改作业(部门策略)。
我想找出哪个用户禁用了此作业。
答案 0 :(得分:3)
更改时间是您默认可以查询的唯一信息
SELECT date_modified FROM dbo.sysjobs
WHERE job_id = 'job_id'
为了捕获更多信息,可以在sysjobs上预先设置以下措施:
很好的例子:SQL Server Agent logging actions and changes done to jobs
另一个:
create trigger trigg on msdb.dbo.sysjobs
after insert , update
as
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'name_of_mail_profile',
@recipients = 'aaaa@ad.com',
@body = 'New job creation or job modification alert',
@subject = 'Automated Message' ;