赞
踩
服务器:CentOS Linux release 7.4.1708 64位
MySql: 社区版5.7.35
由于使用的是社区版MySql,没有内置审计,使用的McAfee的插件
选择了列表中与我的数据库匹配的版本audit-plugin-mysql-5.7-1.1.9-974-linux-x86_64.zip
登录数据库执行以下命令
show global variables like 'plugin_dir';
如图:
解压下载好的插件压缩包,将audit-plugin-mysql-5.7-1.1.9-974-linux-x86_64/lib下 的文件libaudit_plugin.so上传到服务器刚才搜索出的目录下 ,我这里是/usr/local/mysql/lib/plugin
执行命令
chmod a+x libaudit_plugin.so
install plugin audit soname 'libaudit_plugin.so';
这里报了个错,如果正常请跳过这一步,直接进入第6步
解决报错:
(1)找到服务器mysqld地址
在服务器执行以下命令
whereis mysqld
(2)上传offset文件
将压缩包audit-plugin-mysql-5.7-1.1.9-974-linux-x86_64/utils下的offset-extract.sh上传到服务器,位置自定
(3)执行获取offsets
./offset-extract.sh /usr/local/mysql/bin/mysqld
(4) 在MySQL配置文件/etc/my.cnf中添加语句
在[mysqld]后添加以下语句(防止重启数据库后配置丢失):
- plugin-load=AUDIT=libaudit_plugin.so
-
- audit_offsets=7832, 7880, 3640, 4800, 456, 360, 0, 32, 64, 160, 544, 7996, 4368, 3648, 3656, 3660, 6080, 2072, 8, 7064, 7104, 7088, 13480, 148, 672, 0
-
- audit_json_file = on
-
- audit_record_cmds = 'insert,delete,update,create,drop,alter,grant,truncate'
(5)重启
systemctl restart mysqld.service
show plugins;
包含审计插件,成了!(如果这一步没有找到再执行一次安装插件的命令试试)
查询audit版本
show global status like 'AUDIT_version';
查询日志存放位置
find / -name mysql-audit.json
查看日志
tail -f /var/lib/mysql/mysql-audit.json
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。