chmod a+x libaudit_plugin.so
3、登入mysql,執行:
install plugin audit soname 'libaudit_plugin.so';
4、檢查是否安裝成功:
show global status like '%audit%';
5、my.cnf中[mysqld]標籤下配置:
# audit
#plugin_load=server_audit
server_audit_output_type=file
server_audit_events='connect,query,table,query_ddl,query_dml,query_dcl'
server_audit_logging=on
server_audit_file_path =/data/mysql3306/auditlogs/
server_audit_file_rotate_size=200000000
server_audit_file_rotations=200
server_audit_file_rotate_now=on
sysdate_is_now = 1
注意:/data/mysql3306/auditlogs/該目錄一定要存在,否則無法寫入日誌
引數說明可以參考:如下為常用的引數:
server_audit_output_type:指定日誌輸出型別,可為syslog或file6、重啟mysql。server_audit_logging:啟動或關閉審計
server_audit_events:指定記錄事件的型別,可以用逗號分隔的多個值(connect,query,table),如果開啟了查詢快取(query
cache),查詢直接從查詢快取返回資料,將沒有table記錄
server_audit_file_path:如server_audit_output_type為file,使用該變數設定儲存日誌的檔案,可以指定目錄,預設存放在資料目錄的server_audit.log檔案中
server_audit_file_rotate_size:限制日誌檔案的大小
server_audit_file_rotations:指定日誌檔案的數量,如果為0日誌將從不輪轉
server_audit_file_rotate_now:強制日誌檔案輪轉
server_audit_incl_users:指定哪些使用者的活動將記錄,connect將不受此變數影響,該變數比server_audit_excl_users優先順序高
server_audit_syslog_facility:預設為log_user,指定facility
server_audit_syslog_ident:設定ident,作為每個syslog記錄的一部分
server_audit_syslog_info:指定的info字串將新增到syslog記錄
server_audit_syslog_priority:定義記錄日誌的syslogd priority
server_audit_excl_users:該列表的使用者行為將不記錄,connect將不受該設定影響
server_audit_mode:標識版本,用於開發測試
7、解除安裝 server_audit
mysql> uninstall plugin server_audit;
mysql> show variables like '%audit%';
防止 server_audit 外掛程式被解除安裝,需要在配置檔案中新增:
[mysqld]
server_audit=force_plus_permanent
重啟mysql生效
mysql> uninstall plugin server_audit;
error 1702 (hy000): plugin 'server_audit' is force_plus_permanent and can not be unloaded
值得注意的是,應該在server_audit外掛程式被安裝好,並且已經執行之後新增這些配置,否則過早在配置檔案新增這個選項,會導致mysql發生啟動錯誤! mysql開啟使用者 登入 審計功能
背景 假設這麼乙個情況,你是某公司mysql dba,某日突然公司資料庫中的所有被人為刪了。儘管有資料備份,但是因服務停止而造成的損失上千萬,現在公司需要查出那個做刪除操作的人。但是擁有資料庫操作許可權的人很多,如何排查,證據又在哪?是不是覺得無能為力?mysql本身並沒有操作審計的功能,那是不是意...
mysql審計方案 MySQL審計功能
mysql審計功能介紹 之前有同事發現資料丟失,由於mysql自身沒有提供審計功能,查詢binlog可以看到操作時間與連線ip,並不顯示哪個使用者做的操作,詢問開發同事都說沒有做刪除操作,也沒辦法定位操作的人員證據,無奈只能恢復資料。general log會記錄詳細的sql執行記錄,但是生產環境如果...
MySQL社群版Windows編譯
a 安裝 visual studio 2019社群版 c 安裝cmake 安裝的時候,選擇在path中加入 boost 1 70 0 unsupported msvc 14.2 64.exe安裝到特定目錄即可。使用編譯方式編譯,在原始碼目錄下執行bootstrap.bat,再次執行如下命令 b2 b...