Mysql社区版日志审计插件

2023-12-13 07:44:45

过去从Mysql官方自带general.log日志的相比其他插件性能是最差的,我们考虑参考行业中较好的插件是MariaDB Audit Plugin, 可惜并不兼容mysql 5.7与mysql 8.0以上版本。

采用github开源项目,该项目支持MySQL 5.7和MySQL 8.0两个分支。

https://github.com/Vettabase/audit-plugin-for-mysql

安装步骤如下:

找到插件目录,并将server_audit.so复制到插件目录:

mysql> show variables like 'plugin_dir';
+---------------+--------------------------+
| Variable_name | Value ? ? ? ? ? ? ? ? ?  |
+---------------+--------------------------+
| plugin_dir ?  | /usr/lib64/mysql/plugin/ |
+---------------+--------------------------+
1 row in set (0.00 sec)

开启插件:

my.cnf配置文件中添加plugin_load_add = server_audit.so配置项并重启MySQL生效,或者在MySQL命令行控制台中运行INSTALL PLUGIN server_audit SONAME 'server_audit.so';使插件立即生效。

检查审计状态:

mysql> show variables like '%server_audit%';
+-------------------------------+-----------------------+
| Variable_name ? ? ? ? ? ? ? ? | Value ? ? ? ? ? ? ? ? |
+-------------------------------+-----------------------+
| server_audit_events ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? |
| server_audit_excl_users ? ? ? | ? ? ? ? ? ? ? ? ? ? ? |
| server_audit_file_path ? ? ?  | server_audit.log ? ?  |
| server_audit_file_rotate_now  | OFF ? ? ? ? ? ? ? ? ? |
| server_audit_file_rotate_size | 1000000 ? ? ? ? ? ? ? |
| server_audit_file_rotations ? | 9 ? ? ? ? ? ? ? ? ? ? |
| server_audit_incl_users ? ? ? | ? ? ? ? ? ? ? ? ? ? ? |
| server_audit_loc_info ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? |
| server_audit_logging ? ? ? ?  | ON ? ? ? ? ? ? ? ? ?  |
| server_audit_output_type ? ?  | file ? ? ? ? ? ? ? ?  |
| server_audit_query_log_limit  | 1024 ? ? ? ? ? ? ? ?  |
| server_audit_syslog_facility  | LOG_USER ? ? ? ? ? ?  |
| server_audit_syslog_ident ? ? | mysql-server_auditing |
| server_audit_syslog_info ? ?  | ? ? ? ? ? ? ? ? ? ? ? |
| server_audit_syslog_priority  | LOG_INFO ? ? ? ? ? ?  |
+-------------------------------+-----------------------+
15 rows in set (0.00 sec)

server_audit.log默认在datadir目录下。

文章来源:https://blog.csdn.net/m0_38004228/article/details/134940920
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。