MySQL Enterprise Audit 是 MySQL Enterprise Edition(一種商業產品)中包含的擴充功能。若要深入瞭解商業產品,請參閱 https://mysql.dev.org.tw/products/。
MySQL Enterprise Edition 包含 MySQL Enterprise Audit,此稽核功能使用名為 audit_log
的伺服器外掛程式實作。MySQL Enterprise Audit 使用開放的 MySQL 稽核 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/%';