MySQL Enterprise Audit 是 MySQL Enterprise Edition(商業產品)中包含的擴充功能。若要深入了解商業產品,請參閱 https://mysql.dev.org.tw/products/。
MySQL Enterprise Edition 包含 MySQL Enterprise Audit,使用名為 audit_log
的伺服器外掛程式實作。MySQL Enterprise Audit 使用開放的 MySQL Audit API 來啟用以標準、原則為基礎的監控、記錄和封鎖在特定 MySQL 伺服器上執行的連線和查詢活動。MySQL Enterprise Audit 旨在符合 Oracle 稽核規範,為受內部和外部法規指南約束的應用程式提供開箱即用、易於使用的稽核和合規解決方案。
安裝後,稽核外掛程式會啟用 MySQL 伺服器以產生包含伺服器活動稽核記錄的日誌檔案。日誌內容包括用戶端何時連線和中斷連線,以及他們在連線時執行的動作,例如他們存取的資料庫和表格。您可以新增每個查詢的時間和大小統計資料以偵測異常值。
預設情況下,MySQL Enterprise Audit 使用 mysql
系統資料庫中的表格來永久儲存篩選器和使用者帳戶資料。若要使用不同的資料庫,請在伺服器啟動時設定 audit_log_database
系統變數。
在您安裝稽核外掛程式之後 (請參閱 章節 8.4.5.2,「安裝或解除安裝 MySQL Enterprise Audit」),它會寫入稽核日誌檔案。預設情況下,該檔案在伺服器資料目錄中命名為 audit.log
。若要變更檔案的名稱,請在伺服器啟動時設定 audit_log_file
系統變數。
預設情況下,稽核日誌檔案內容會以新樣式的 XML 格式寫入,不含壓縮或加密。若要選取檔案格式,請在伺服器啟動時設定 audit_log_format
系統變數。如需檔案格式和內容的詳細資訊,請參閱 章節 8.4.5.4,「稽核日誌檔案格式」。
如需有關控制記錄如何發生的詳細資訊,包括稽核日誌檔案命名和格式選取,請參閱 章節 8.4.5.5,「設定稽核記錄特性」。若要執行已稽核事件的篩選,請參閱 章節 8.4.5.7,「稽核日誌篩選」。如需用於設定稽核日誌外掛程式的參數說明,請參閱 稽核日誌選項和變數。
如果啟用稽核日誌外掛程式,則 Performance Schema (請參閱 第 29 章,MySQL Performance Schema) 會針對它進行檢測。若要識別相關的檢測,請使用此查詢
SELECT NAME FROM performance_schema.setup_instruments
WHERE NAME LIKE '%/alog/%';