有没有办法找出谁在 SQL Server 2005 中删除了数据库以及删除它的时间/日期?
如果它足够新,它可能仍在默认跟踪中。基本假设是 DROP 事件将是为此数据库记录的最后一个事件。因此,如果有人删除了数据库“splunge”,您应该能够以这种方式捕获它(再次取决于它发生的时间):
DECLARE @FileName VARCHAR(255)
SELECT @FileName = SUBSTRING(path, 0,
LEN(path)-CHARINDEX('\', REVERSE(path))+1) + '\Log.trc' --'
FROM sys.traces WHERE is_default = 1;
SELECT TOP 1 LoginName, HostName, ApplicationName, StartTime, TextData
FROM sys.fn_trace_gettable( @FileName, DEFAULT ) AS gt
WHERE EventClass = 47 AND DatabaseName = 'splunge'
ORDER BY StartTime DESC;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2264 次 |
最近记录: |