【MySQL】MySQL審計操做記錄

server_audit是一款內嵌在mariadb的審計插件,在mysql中一樣適用,主要用於記錄用戶操做mysql

1.安裝:sql

經過show variables like 'plugin_dir';查看你的插件目錄,
個人是:/usr/lib64/mysql/plugin/
把下載好的插件server_audit.so
複製到/usr/lib64/mysql/plugin/ 
注意chmod +x server_audit.so
登陸mysql執行插件安裝命令:
INSTALL PLUGIN server_audit SONAME 'server_audit.so';
插件安裝成功後有這些全局變量:show variables like '%audit%';
複製代碼

2.配置:緩存

進入mysql 執行:更改全局變量
set global server_audit_excl_users='root';
set global server_audit_events='QUERY_DDL,QUERY_DML';
set global server_audit_file_path ='/mysqllog/';
set global server_audit_file_rotate_size=1073741824;
set global server_audit_file_rotations=10;
set global server_audit_file_rotate_now=ON;
set global server_audit_logging=on;

在my.cnf 增長
#audit
server_audit_events='QUERY_DDL,QUERY_DML'
server_audit_logging=on
server_audit_file_path =/mysqllog/
server_audit_file_rotate_size=1G
server_audit_file_rotations=10
server_audit_file_rotate_now=ON
server_audit_excl_users=root
複製代碼

3.建議關閉general logbash

set global general_log=off;
在my.cnf註釋
general_log_file = /mysqllog/mysql.log
general_log = 1
複製代碼

4.參數說明:ide

詳細請參考:https://mariadb.com/kb/en/mariadb/server_audit-system-variables/
server_audit_output_type:指定日誌輸出類型,可爲SYSLOG或FILE
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:標識版本,用於開發測試
複製代碼

5.卸載測試

mysql> UNINSTALL PLUGIN server_audit;
mysql> show variables like '%audit%';
Empty set (0.00 sec)
複製代碼

防止server_audit 插件被卸載,須要在配置文件中添加: [mysqld] server_audit=FORCE_PLUS_PERMANENT 重啓MySQL生效ui

相關文章
相關標籤/搜索