Sql-Server

SQL Server 審計跟踪的最佳實踐

  • November 18, 2013

我今天面臨的情況是,如果我們知道誰登錄了 SQL 並執行了一些刪除,這將對我和我的公司非常有益。

我們有一種情況,至少有 2 人(有時 3 人)使用 SQL Server Management Studio 登錄到 SQL,並執行各種功能。

我們需要的是審計跟踪。如果有人刪除了記錄(錯誤地或以其他方式),我想知道做了什麼。

有沒有辦法做到這一點?

您可以使用一些不同的工具。如果您有 SQL Server 2008 或更高版本,則內置審核可以擷取此資訊。

如果無法使用 SQL Profiler 或伺服器端跟踪來擷取資訊。

如果您的數據庫處於完全恢復狀態,您可以使用 Log Explorer 或 LiteSpeed for SQL Server 探勘事務日誌。如果您想編寫自己的東西,可以使用一些未記錄的命令。

您可以設置 DML 觸發器,使用數據庫事務日誌讀取事務 (DELETE) 資訊,使用原生 SQL Server 功能:

  • SQL Server 更改跟踪
  • SQL Server 變更數據擷取
  • SQL Server 審核

或使用第三方工具

ApexSQL 有兩個審計工具——ApexSQL 日誌和 ApexSQL 審計。使用其中一個有**一定的優勢**,例如:

  • 審核所需的時間段——無論是在安裝工具之前還是之後
  • 可審計的操作範圍
  • 自動化,審計資訊如何儲存以及之後如何查詢

免責聲明:我在 ApexSQL 擔任產品支持工程師

引用自:https://serverfault.com/questions/248346