Step 1.建立存取表, 用於儲存登入資訊
-- 建庫
mysql> CREATE DATABASE `auditdb`;
-- 建表
mysql> CREATE TABLE `accesslog` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`ServerID` int(11) DEFAULT NULL,
`ConnectionID` int(11) DEFAULT NULL,
`ConnUser` varchar(30) DEFAULT NULL,
`MatchUser` varchar(30) DEFAULT NULL,
`LoginTime` datetime DEFAULT NULL,
PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;
Step2. 為普通使用者賦予寫入許可權(高階使用者可以不賦予,因為高階使用者已具備寫入許可權)
mysql> grant insert on `auditdb`.`accesslog` to 普通使用者@具體主機;
mysql> flush privileges;
Step3. 在目標資料庫的[mysqld]中增加以下:
init-connect='insert into auditdb.accesslog(ServerID, ConnectionID ,ConnUser ,MatchUser ,LoginTime) values(@@server_id, connection_id(),user(),current_user(),now());'
*** 設定init-connect完成後,需要重新啟動mysql(生產環境請慎重) ***
Step 4. 下載並安裝MySQL Binlog Digger 4.16
https://download.csdn.net/download/bournetai/12969094
Step 5.使用MySQL Binlog Digger 4.16進行dml操作審計(如果進行ddl審計, 則操作型別選擇ddl)
此外,MySQL Binlog Digger 4.16還具備mysqlbinlog挖掘分析,提供回滾資訊功能
### 宣告 ###
十分感謝您使用本工具, 本工具為免費產品, 對於因本工具而造成的損失, 本工作室概不承擔! 因本人水平有限, 如發現不足, 請多多請正.
廣州逆舟資料工作室 Bourne QQ:649869986 微信:wxid_glzhz1qg2xre22
2020-10-19 廣州