mysql数据库开启审计功能

发布时间:2020-06-30 浏览次数:3736 文章来源:个人博客

MySQL的审计功能,主要可以记录下对数据库的所有操作,包括登录、连接、对表的增删改查等,便于责任追溯,问题查找,当然一定方面也会影响数据库效率。根据 MySQL 版本的不同有两种分为企业版和社区版:
a、企业版 MySQL Enterprise Edition(收费)自带AUDIT审计功能。

b、社区版  MySQL Community Server(免费)需要自己下载插件。

为社区版提供审计的插件的主要有以下三个 McAfee MySQL Audit Plugin、Percona Audit Log Plugin、MariaDB Audit Plugin。


这里主要讲述:
MariaDB Audit Plugin
    MariaDB官网下载对应版本的安装包, 从安装包中获得版本对应的server_audit.so插件,拷贝到到 自己的mysql插件库下(MySQL与 MariaDB的版本对应很重要,之前这上面吃了大亏。低版本的容易导致数据库奔溃,选择的是5.7.21版本的mysql数据库、 MariaDB的版本是5.5.57!)安装插件,开启审计功能,配置my.cnf文件。具体说明如下:

1、下载MariaDB的tar.gz压缩包:https://downloads.mariadb.org/mariadb/5.5/ 

2、提取出server_audit.so,放到mysql的插件目录下面,mysql的插件文件目录可以通过:SHOW GLOBAL VARIABLES LIKE 'plugin_dir';  得到

3、执行:install plugin server_audit SONAME 'server_audit.so';

4、修改配置my.cnf,在【mysqld】下面写上:

server_audit_events='CONNECT,QUERY,TABLE'
server_audit_logging=ON
server_audit_file_path =/data/mysql/mysql_audit/
server_audit_file_rotate_size=200000000
server_audit_file_rotations=200
server_audit_file_rotate_now=ON

该配置需要预留40个G的日志空间!

重启mysql即可!

不过需要注意的地方,就是日志文件存放的目录,mysql需要有权限访问!

chown mysql:mysql -R  /data/mysql/mysql_audit/



key-word
mysql mysql审计 server_audit