Sql-Server
SQL Server 審計跟踪的最佳實踐
我今天面臨的情況是,如果我們知道誰登錄了 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 擔任產品支持工程師