sql-server – 找出谁在SQL Server上修改了存储过程?
发布时间:2020-12-12 16:54:25 所属栏目:MsSql教程 来源:网络整理
导读:看起来有人登录并修改了我们的SQL Server数据库上的存储过程.有没有办法找出那个人的凭据? 解决方法 您可以查看默认跟踪并轻松搞清楚.试试Jonathan Kehayias的例子. http://sqlblog.com/blogs/jonathan_kehayias/archive/2009/05/27/pass-dba-sig-default-tr
看起来有人登录并修改了我们的SQL Server数据库上的存储过程.有没有办法找出那个人的凭据?
解决方法您可以查看默认跟踪并轻松搞清楚.试试Jonathan Kehayias的例子.http://sqlblog.com/blogs/jonathan_kehayias/archive/2009/05/27/pass-dba-sig-default-trace-presentation-files.aspx 这是作为示例显示的,您需要查看ALTER OBJECT事件类型. http://sqlblog.com/blogs/jonathan_kehayias/archive/2009/09/29/what-session-created-that-object-in-tempdb.aspx 编辑: 代码由Jonathan Kehayias提供. DECLARE @filename VARCHAR(255) SELECT @FileName = SUBSTRING(path,LEN(path)-CHARINDEX('',REVERSE(path))+1) + 'Log.trc' FROM sys.traces WHERE is_default = 1; SELECT gt.HostName,gt.ApplicationName,gt.NTUserName,gt.NTDomainName,gt.LoginName,gt.SPID,gt.EventClass,te.Name AS EventName,gt.EventSubClass,gt.TEXTData,gt.StartTime,gt.EndTime,gt.ObjectName,gt.DatabaseName,gt.FileName,gt.IsSystem FROM [fn_trace_gettable](@filename,DEFAULT) gt JOIN sys.trace_events te ON gt.EventClass = te.trace_event_id WHERE EventClass in (164) --AND gt.EventSubClass = 2 ORDER BY StartTime DESC; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |