您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關MySQL5.7審計功能windows系統有什么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
MySQL5.7審計功能windows系統
MySQL的審計功能,主要可以記錄下對數據庫的所有操作,包括登錄、連接、對表的增刪改查等,便于責任追溯,問題查找,當然一定方面也會影響數據庫效率。根據MySQL版本的不同有兩種分為企業版和社區版,審計功能目前在網上找到的基本都是基于linux系統的很崩潰(公司基于Windows),為了下載一個windows系統的插件找了好久。本文主要講解的是基于windows系統的
a、企業版 MySQL Enterprise Edition(收費)自帶AUDIT審計功能。
b、社區版 MySQL Community Server(免費)需要自己下載插件。
為社區版提供審計的插件的主要有以下三個 McAfee MySQL Audit Plugin、Percona Audit Log Plugin、MariaDB Audit Plugin。
這里主要講述:
MariaDB Audit Plugin
MariaDB官網下載對應版本的安裝包,從安裝包中獲得版本對應的.dll插件(linux系統.so插件),拷貝到到自己的mysql插件庫下,安裝插件,開啟審計功能,配置my.ini文件。具體說明如下、
1、MySQL與MariaDB的版本對應很重要,之前這上面吃了大虧。低版本的容易導致數據庫奔潰,選擇的是5.7.21版本的mysql數據庫、MariaDB的版本是5.5.57
下載路徑
https://downloads.mariadb.org/mariadb/5.5/
。
2、從該路徑下獲得對應的mysql插件(server_audit.dll),在mariadb-5.5.57-winx64\lib\plugin\目錄下。復制到對應的MySQL插件庫中C:\Program Files\MySQL\MySQL Server 5.7\lib\plugin。
3、登入mysql執行如下命令,可以查看mysql數據對應的插件文件存放位置。
mysql> SHOW GLOBAL VARIABLES LIKE 'plugin_dir';
4、執行如下命令安裝審計插件。
mysql> INSTALL PLUGIN server_audit SONAME 'server_audit.dll';
5、安裝成功,通過如下命令可以查看初始化參數配置。
mysql> show variables like '%audit%';
6、執行如下命令開啟mysql審計功能,詳細配置參數說明見文章結尾。
備注:指定哪些操作被記錄到日志文件中
set global server_audit_events='CONNECT,QUERY,TABLE,QUERY_DDL'
備注:開啟審計功能
set global server_audit_logging=on
備注:默認存放路徑,可以不寫,默認到data文件下
set global server_audit_file_path =/data/mysql/auditlogs/
備注:設置文件大小
set global server_audit_file_rotate_size=200000000
指定日志文件的數量,如果為0日志將從不輪轉
set global server_audit_file_rotations=200
強制日志文件輪轉
set global server_audit_file_rotate_now=ON
7、執行完上述命令,show variables like '%audit%';可查看審計配置說明
8、可到data文件下查看日志文件server_audit.log。默認文件路徑C:\ProgramData\MySQL\MySQL Server 5.7\Data;主要看你的ProgramData目錄在什么位置
可從中查看各項操作,可以發現什么時間那個用戶執行了什么操作,便于責任追究。
9、在控制臺中用命令行配置的參數只對本次服務有效果,服務重啟配置全部初始化了,因此想長久配置需要再my.ini文件(C:\ProgramData\MySQL\MySQL Server 5.7)中添加相應的配置信息。配置信息如下,需要更多參數的可自行添加。需要添加到[mysqld]下方,重啟服務配置生效。
#備注:防止server_audit 插件被卸載
server_audit=FORCE_PLUS_PERMANENT
#備注:指定哪些操作被記錄到日志文件中
server_audit_events='CONNECT,QUERY,TABLE,QUERY_DDL'
server_audit_logging=on
server_audit_file_rotate_size=200000001
server_audit_file_rotations=200
server_audit_file_rotate_now=ON
10、卸載mysql審計插件,執行如下命令。
mysql> UNINSTALL PLUGIN server_audit;
mysql> show variables like '%audit%';
Empty set (0.00 sec)
重要:
在server_audit插件安裝好后,并且已經運行之后添加這些配置,否則過早添加容易導致數據庫服務無法正常啟動
參數配置說明:
詳細請參考: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:標識版本,用于開發測試
感謝各位的閱讀!關于“MySQL5.7審計功能windows系統有什么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。