# MySQL开启审计功能

# 概述

其实mysql本身已经提供了详细的sql执行记录–general log ,但是开启它有以下几个缺点

无论sql有无语法错误,只要执行了就会记录,导致记录大量无用信息,后期的筛选有难度。

sql并发量很大时,log的记录会对io造成一定的印象,是数据库效率降低。

日志文件很容易快速膨胀,不妥善处理会对磁盘空间造成一定影响。

# 查询审计配置情况

show global variables like 'log_timestamps';

show global variables like '%general%';

# 永久开启审计功能

vim /etc/my.cnf

在/etc/my.cnf中添加下述配置
[mysqld]

general_log = on                                   // on为开启;off为关闭

general_log_file = /var/log/generalLog.log         // 审计信息存储位置

log_timestamps = SYSTEM                            // 设置日志文件的输出时间为地方时

# 临时开启审计

在mysql中执行以下命令:

set global general_log = on;

set global general_log_file = /var/log/generalLog.log

set global log_timestamps = SYSTEM;

关于评论

评论前请填好“昵称”、“邮箱”这两栏内容,否则不会收到回复,谢谢!