注意:
安装插件的方式优缺点:
缺点:日志信息比较大,对性能影响大。
优点:对每一时刻每一用户的操作都有记录。
搭建过程:
链接:https://pan.baidu.com/s/18041QX71r6OvlAU_J8mJ2Q
提取码:h5ec
1、把文件上传到/opt目录下
[root@edu-mysql-02 ~]# cd /opt/
[root@edu-mysql-02 opt]# unzip audit-plugin-mariadb-10.2-1.1.4-725-linux-x86_64.zip
2、登录数据库,查看存放路径
mysql5.7安装audit审计插件_mysqlmysql5.7安装audit审计插件_mysql_02
mysql> show global variables like ‘plugin_dir’;
mysql5.7安装audit审计插件_mysql_03mysql5.7安装audit审计插件_audit_04
[root@edu-mysql-02 opt]# cp audit-plugin-mariadb-10.2-1.1.4-725/lib/libaudit_plugin.so /usr/lib64/mysql/plugin/
[root@edu-mysql-02 opt]# cd /usr/lib64/mysql/plugin/
授权:
[root@edu-mysql-02 plugin]# chmod +x libaudit_plugin.so
[root@edu-mysql-02 plugin]# chown mysql:mysql libaudit_plugin.so
mysql5.7安装audit审计插件_mysql_05mysql5.7安装audit审计插件_审_06
3、登录数据库进行安装
mysql> install plugin audit soname ‘libaudit_plugin.so’;
报错信息如下:
ERROR 1123 (HY000): Can’t initialize function ‘audit’; Plugin initialization function failed.
mysql5.7安装audit审计插件_audit_07mysql5.7安装audit审计插件_mysql_08
解决办法:
1)授权,加载
[root@edu-mysql-02 utils]# pwd
/opt/audit-plugin-mysql-5.7-1.1.4-725/utils
[root@edu-mysql-02 utils]# chmod +x offset-extract.sh
[root@edu-mysql-02 opt]# which mysqld
/usr/sbin/mysqld
[root@edu-mysql-02 utils]# ./offset-extract.sh /usr/sbin/mysqld
mysql5.7安装audit审计插件_审_09mysql5.7安装audit审计插件_audit_10
2)编辑/etc/my.cnf
plugin-load=AUDIT=libaudit_plugin.so
audit_offsets = 7824, 7872, 3632, 4792, 456, 360, 0, 32, 64, 160, 536, 7988, 4360, 3648, 3656, 3660, 6072, 2072, 8, 7056, 7096, 7080
mysql5.7安装audit审计插件_audit_11mysql5.7安装audit审计插件_审_12
3)重启mysql
[root@edu-mysql-02 utils]# systemctl restart mysqld.service
4、进入mysql安装
mysql> install plugin audit soname ‘libaudit_plugin.so’;
5、检查:
mysql> show plugins;
mysql5.7安装audit审计插件_audit_13mysql5.7安装audit审计插件_mysql_14
检查版本
mysql> show global status like ‘AUDIT_version’;
mysql5.7安装audit审计插件_审_15mysql5.7安装audit审计插件_mysql_16
开启audit功能:
mysql> SET GLOBAL audit_json_file=ON;
mysql5.7安装audit审计插件_审_17mysql5.7安装audit审计插件_mysql_18
可以查看插件有哪些可配置的参数:
mysql> show variables like ‘%audit%’\G;
为了保证重启数据库,配置不丢失,修改my.cnf 配置文件,将下面的配置添加到[mysqld]中,所以在配置文件中my.cnf加入参数:
总的如下:
plugin-load=AUDIT=libaudit_plugin.so
audit_offsets = 7824, 7872, 3632, 4792, 456, 360, 0, 32, 64, 160, 536, 7988, 4360, 3648, 3656, 3660, 6072, 2072, 8, 7056, 7096, 7080
audit_json_file = on
audit_record_cmds = ‘insert,delete,update,create,drop,alter,grant,truncate’
查看日志:
[root@edu-mysql-02 log]# find / -name mysql-audit.json
[root@edu-mysql-02 log]# tail -f /var/lib/mysql/mysql-audit.json
mysql5.7安装audit审计插件_审_19mysql5.7安装audit审计插件_audit_20