2017-04-27 62 views
3

SQL Server 2012中是否有任何方法來確定誰更改了數據庫名稱?有沒有審計日誌或有幫助的事情?SQL Server:我們可以找出誰更名了數據庫嗎?

+0

試試[此](http://stackoverflow.com/questions/5299669/how-to-see-query-history-in-sql-server-management-studio) – XtremeBaumer

+0

重命名可以通過UI和SQL腳本完成。你知道是否有任何審計日誌? – variable

+0

SQL Server可以配置爲審計很多事情https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-database-engine –

回答

5

無論您如何操作,重命名操作都會寫入TLOG。

我做了一個小測試並重新命名了一個數據庫。此重命名操作被寫入TLOG,你可以看到下面的截圖:

enter image description here

可以讀取日誌,並使用此查詢知道這個名字:

select 
    suser_sname([transaction sid]) as username,* 
from 
    fn_dblog(null,null) 

這是受以下條款

  1. 你的主DB是完全恢復模式
  2. 即使你的主DB不完整恢復模式,你可能得到的數據,如果不是截斷

還要注意閱讀日誌上現場製作的數據庫不推薦的,所以我建議採取TLOG的備份和seperately閱讀他們

相關問題