MySql数据库之审计(开启log+设置init-connect实现无插件审计)

目录

一、查询审计配置情况

二、永久开启审计

三、临时开启审计

四、设置init-connect

1、创建用于存放连接日志的数据库和表

2、授权某个用户拥有对审计表的select和insert权限

3、设置init_connect参数

五、验证

六、番外

注:有关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 来实现相对完整的审计功能。

四、设置init-connect

1、创建用于存放连接

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值