SQL Server - 检索已删除的数据库事务日志

时间:2014-09-19 10:25:35

标签: sql sql-server sql-server-2008

SQL Server-多用户

我希望看到已删除的数据库日志和已执行"删除"的Userid事务。

1 个答案:

答案 0 :(得分:2)

默认跟踪将包含数据库创建/更改/删除事件。如果操作仍在文件中,则下面的查询将返回所需信息。

SELECT 
     te.name AS EventName
    ,tt.StartTime
    ,tt.HostName
    ,tt.LoginName
    ,tt.ApplicationName
FROM sys.traces AS t
CROSS APPLY fn_trace_gettable(
    REVERSE(N'crt.gol' + SUBSTRING(REVERSE(t.path), CHARINDEX(N'\', REVERSE(t.path)), 128)), default) AS tt
JOIN sys.trace_events AS te ON
    te.trace_event_id = tt.EventClass
JOIN sys.trace_subclass_values AS tesv ON
    tesv.trace_event_id = tt.EventClass
    AND tesv.subclass_value = tt.EventSubClass
WHERE
    t.is_default = 1 --default trace
    AND tt.ObjectType = 16964; --database type