我们的数据库最近恢复了。 这引起了一些真正的悲伤。 是否有审计机制来确定谁执行了最近的恢复? 谢谢。
我只是testing一个恢复,它似乎被logging在默认跟踪。 这个查询是否有任何亮点? (如果当前正在运行的跟踪文件没有足够的回退,可能需要稍微调整一下,否则在log文件夹中可能会有更多* .trc文件进行调查)
declare @filepath nvarchar(1000) SELECT @filepath = cast(value as nvarchar(1000)) FROM [fn_trace_getinfo](NULL) WHERE [property] = 2 and traceid=1 print @filepath SELECT * FROM [fn_trace_gettable](@filepath, DEFAULT) WHERE TextData LIKE '%RESTORE DATABASE%' ORDER BY StartTime DESC;
除非你有第三方备份软件来执行任务并为你logging,或者你正在运行一个SQL事件探查器跟踪,那么你可以做的最好的事情就是查看数据库的所有者,并且希望它不会从任何人恢复它。 SQL不会logging在服务器日志中执行还原的人员,也不会在事件日志中报告此事件。