Sql-Server

sql server 的最佳實踐 - 為繁忙網站上的操作設置審核

  • January 23, 2010

我有一個非常繁忙的網站。使用者可以創建多種類型的內容,然後可以對其進行投票/否決、報告為攻擊性、由管理員啟用/禁用等。我想啟用對網站上執行的所有操作的審核。

我使用的數據庫是 SQL Server 2005。我有兩個選擇。第一個是包含審核螢幕所需的大部分詳細資訊的單個大表,即在此表中複製內容片段以消除連接到其他表的需要。第二種解決方案是為每種類型的內容創建一個單獨的審核表。這使得為使用者檢索審計日誌變得更加複雜,例如,因為他們可能涉及許多不同類型的內容,因此我需要從許多不同的表中檢索數據。

所以這似乎是表大小和查詢簡單性之間的權衡。這裡有什麼經驗法則嗎?或者說哪種方式更好?

這並不能完全回答您的問題,但是該文件非常有用,您將真正受益於閱讀它。Microsoft 為 SQL Server 2008(我知道,不是 2005 年)整理了一份審計和合規性指南,其中包含大量有關該主題的重要資訊:

http://www.microsoft.com/downloads/details.aspx?FamilyId=6E1021DD-65B9-41C2-8385-438028F5ACC2&displaylang=en

您所描述的情況非常適合 SQL Server 2008 的變更數據擷取,它會自動擷取您想要管理的數據。不幸的是,它只是企業版,這意味著它並不便宜。如果你想避免重新發明輪子,這是要走的路。

當您說“非常繁忙的網站”時,它會引發危險信號。這些技術,即使是你自己的,都不會是低成本的。

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