目录
2、授权某个用户拥有对审计表的select和insert权限
注:有关MySql数据库的其他操作请参见MySql目录进行查找。
一、查询审计配置情况
show global variables like 'log_timestamps';
show global variables like '%general%';
解释:可以看到 log 时间戳是系统时间;此时 log 功能没打开;log 文件放在/var/lib/mysql/jdh.log下,注意这个 log 存放路径是默认的,每个人不一样,根据你自己的情况而定。
二、永久开启审计
注:若想系统重启后还能生效,就需要按如下操作,若临时用一下只需参看【三、临时开启审计】。
vim /etc/mysql/my.cnf
在/etc/mysql/my.cnf中添加下述配置
[mysqld]
general_log = on // on为开启;off为关闭
general_log_file = /var/lib/mysql/jdh.log // 审计信息存储位置
log_timestamps = SYSTEM // 设置日志文件的输出时间为地方时
解释:经验证,其实在mysql中只要打开log开关就会一直开着,也无需在配置文件中进行配置。
注意:上方的 my.cnf 配置文件为我的 linux 服务器上的 mysql 配置文件默认地址,不同系统和不同版本的 mysql 可能不一样。
三、临时开启审计
在mysql中执行以下命令
set global general_log = on;
set global general_log_file = /var/lib/mysql/jdh.log 注:log 保存文件需要改成你自己的,一般是默认路径,就不用改了。
set global log_timestamps = SYSTEM;
解释:基本会默认时间戳和 log 文件位置。大多数只需要第一条命令打开 log 开关就行了。
到此为止我们已经打开了审计得功能,但这只是记录了所有的对数据库的操作,所以接下来我们将通过 init-connect+binlog 来实现相对完整的审计功能。