sql-server – 如何查找存储过程何时被删除以及谁删除了它?

前端之家收集整理的这篇文章主要介绍了sql-server – 如何查找存储过程何时被删除以及谁删除了它?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
实际上,其中一个关键作业在执行时失败了.

错误消息中,发现失败是因为它缺少存储过程.

现在,我如何找出存储过程何时受到用户的影响.我如何找出用户做了什么以及何时做到了?

解决方法

您获得了管理跟踪:
select * from fn_trace_getinfo(NULL)
where property=2
and traceid = 1

您将查看对象类型8727 Stored Procedure上类47 Object:Deleted Event Class的事件的管理跟踪:

select * from fn_trace_gettable('....trc',-1)
where EventClass = 47
and ObjectType=8727

管理跟踪会定期回收,并保留大约4-5条跟踪,您应该使用仍然存在的最旧的trc文件名称.

如果程序很关键,那么DBA应确保只有经过授权的人员可以修改删除它.它应该对模式更改进行审计.这不是谁丢弃程序的错,而是完全是DBA的错误.

猜你在找的MsSQL相关文章