MySQL社区版开启审计功能
mysql下载配置1、审计插件下载地址:
2、下载,解压,audit_plugin.so放到lib/plugin/下,并执⾏:
chmod a+x libaudit_plugin.so
3、登录MySQL,执⾏:
install plugin audit soname 'libaudit_plugin.so';
4、检查是否安装成功:
show global status like '%audit%';
5、myf中[mysqld]标签下配置:
# Audit
#plugin_load=server_audit
server_audit_output_type=FILE
server_audit_events='CONNECT,QUERY,TABLE,QUERY_DDL,QUERY_DML,QUERY_DCL'
server_audit_logging=on
server_audit_file_path =/data/mysql3306/auditlogs/
server_audit_file_rotate_size=200000000
server_audit_file_rotations=200
server_audit_file_rotate_now=ON
sysdate_is_now = 1
注意:/data/mysql3306/auditlogs/该⽬录⼀定要存在,否则⽆法写⼊⽇志
server_audit_output_type:指定⽇志输出类型,可为SYSLOG或FILE
server_audit_logging:启动或关闭审计
server_audit_events:指定记录事件的类型,可以⽤逗号分隔的多个值(connect,query,table),如果开启了查询缓存(query cache),查询直接从查询缓存返回数据,将没有table记录
server_audit_file_path:如server_audit_output_type为FILE,使⽤该变量设置存储⽇志的⽂件,可以指定⽬录,默认存放在数据⽬录的server_audit.log⽂件中
server_audit_file_rotate_size:限制⽇志⽂件的⼤⼩
server_audit_file_rotations:指定⽇志⽂件的数量,如果为0⽇志将从不轮转
server_audit_file_rotate_now:强制⽇志⽂件轮转
server_audit_incl_users:指定哪些⽤户的活动将记录,connect将不受此变量影响,该变量⽐server_audit_excl_users优先级⾼server_audit_syslog_facility:默认为LOG_USER,指定facility
server_audit_syslog_ident:设置ident,作为每个syslog记录的⼀部分
server_audit_syslog_info:指定的info字符串将添加到syslog记录
server_audit_syslog_priority:定义记录⽇志的syslogd priority
server_audit_excl_users:该列表的⽤户⾏为将不记录,connect将不受该设置影响
server_audit_mode:标识版本,⽤于开发测试
6、重启MySQL。
7、卸载 server_audit
mysql> UNINSTALL PLUGIN server_audit;
mysql> show variables like '%audit%';
防⽌ server_audit 插件被卸载,需要在配置⽂件中添加:
[mysqld]
server_audit=FORCE_PLUS_PERMANENT
重启MySQL⽣效
mysql> UNINSTALL PLUGIN server_audit;
ERROR 1702 (HY000): Plugin 'server_audit' is force_plus_permanent and can not be unloaded
值得注意的是,应该在server_audit插件被安装好,并且已经运⾏之后添加这些配置,否则过早在配置⽂件添加这个选项,会导致MySQL 发⽣启动错误!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。