mairadb Audit Plugin簡單說明

安裝插件

[mysqld]
...
plugin_load=server_audit=server_audit.so
...

審計日誌類型參數

server_audit_events:CONNECT,QUERY,TABLE
簡單測試:

  • CONNECT:只選擇此值,會記錄每次的連接創建和斷開
20171219 11:19:08,hostname,root,localhost,24,0,DISCONNECT,,,0
20171219 11:19:09,hostname,root,localhost,25,0,CONNECT,,,0
20171219 11:19:31,hostname,root,localhost,25,0,DISCONNECT,,,0
  • TABLE:只選擇此值,不會記錄連接記錄
20171219 11:20:26,hostname,root,localhost,27,182,READ,username,t,
20171219 11:20:46,hostname,root,localhost,27,183,ALTER,username,t,
20171219 11:20:46,hostname,root,localhost,27,183,READ,username,t,
  • QUERY:只選擇此值,DML/DDL統一歸納爲query,沒有單獨的操作狀態提示
20171219 11:21:47,hostname,root,localhost,29,192,QUERY,username,'show tables',0
20171219 11:21:56,hostname,root,localhost,30,195,QUERY,,'select @@version_comment limit 1',0
20171219 11:21:58,hostname,root,localhost,30,196,QUERY,,'SELECT DATABASE()',0
20171219 11:21:58,hostname,root,localhost,30,198,QUERY,username,'show databases',0
20171219 11:21:58,hostname,root,localhost,30,199,QUERY,username,'show tables',0
20171219 11:22:17,hostname,root,localhost,30,201,QUERY,username,'alter table t drop index name',0

此參數默認值爲空,即選擇CONNECT,QUERY,TABLE

20171219 11:24:20,hostname,root,localhost,35,0,CONNECT,,,0
20171219 11:24:20,hostname,root,localhost,35,214,QUERY,,'select @@version_comment limit 1',0
20171219 11:24:24,hostname,root,localhost,35,215,QUERY,,'SELECT DATABASE()',0
20171219 11:24:24,hostname,root,localhost,35,217,QUERY,username,'show databases',0
20171219 11:24:24,hostname,root,localhost,35,218,QUERY,username,'show tables',0
20171219 11:24:29,hostname,root,localhost,35,220,READ,username,t,
20171219 11:24:29,hostname,root,localhost,35,220,QUERY,username,'select * from t',0
20171219 11:24:36,hostname,root,localhost,35,221,WRITE,username,t,
20171219 11:24:36,hostname,root,localhost,35,221,QUERY,username,'delete from t',0
20171219 11:24:59,hostname,root,localhost,35,222,ALTER,username,t,
20171219 11:24:59,hostname,root,localhost,35,222,READ,username,t,
20171219 11:24:59,hostname,root,localhost,35,222,QUERY,username,'alter table t add index (name)',0

完整的記錄

記錄開關參數

server_audit_logging:開啓審計日誌記錄日誌參數(ON/OFF)

白名單參數

server_audit_incl_users:記錄指定用戶的操作
server_audit_excl_users:不去記錄指定用戶的操作

日誌相關參數

日誌文件可以單獨的存在一個文件中,或者與syslog放在同一個文件中

  • 本地日誌
    • server_audit_output_type:文件類型,file
    • server_audit_file_rotate_now:日誌輪詢寫開關(默認off)(ps:測試發現參數可以動態調整不生效,但無論是on還是off好像只要指定了副本數後自動輪詢。。測試版本10.1.22)
    • server_audit_file_path:日誌文件名和位置
    • server_audit_file_rotate_size:日誌文件大小,單位值byte
    • server_audit_file_rotations:輪詢的文件個數
  • 遠程日誌
    • server_audit_output_type:文件類型:syslog
    • server_audit_syslog_ident:如下面範例所示:mysql-server_auditing
    • server_audit_syslog_info:如下面範例所示:prod1
      Aug 717:19:58localhostmysql-server_auditing: <prod1> localhost.localdomain,root,localhost,1,7, QUERY, mysql, 'SELECT * FROM user',0

其他參數

server_audit_query_log_limit:能夠展現的最大sql長度,如果sql寫的超過閥值,會被階段。默認1024
server_audit_mode:沒實際意義,內部參數

  • syslog相關
    • server_audit_syslog_priority
    • server_audit_syslog_facility
    • server_audit_syslog_info

本地輸出審計日誌格式

[timestamp],[serverhost],[username],[host],[connectionid],[queryid],CONNECT,[database],,0 
[timestamp],[serverhost],[username],[host],[connectionid],[queryid],DISCONNECT,,,0 
[timestamp],[serverhost],[username],[host],[connectionid],[queryid],FAILED_CONNECT,,,[retcode]
[timestamp],[serverhost],[username],[host],[connectionid],[queryid],CREATE,[database],[object], 
[timestamp],[serverhost],[username],[host],[connectionid],[queryid],READ,[database],[object], 
[timestamp],[serverhost],[username],[host],[connectionid],[queryid],WRITE,[database],[object], 
[timestamp],[serverhost],[username],[host],[connectionid],[queryid],ALTER,[database],[object], 
[timestamp],[serverhost],[username],[host],[connectionid],[queryid],RENAME,[database], 
[object_old]|[database_new].[object_new], 
[timestamp],[serverhost],[username],[host],[connectionid],[queryid],DROP,[database],[object],

壓測性能損耗

  • 壓測到服務器瓶頸
    這裏寫圖片描述

  • audit開啓
    這裏寫圖片描述

  • general_log開啓
    這裏寫圖片描述

注:測試線條比較粗,僅供參考

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章