如何手动轮换 MySQL 企业审计日志
要轮换 MySQL 企业审计日志,需要两个步骤:
- 重命名现有的审计日志,例如:
$ mv audit.log audit.log.1
- 使用 audit_log_flush 变量刷新日志:
SET GLOBAL audit_log_flush = 1;
www. On IT Road .com
权限
由于 audit_log_flush 变量仅存在于 GLOBAL 范围内,因此需要 SUPER 权限才能设置它。
如果我们不想授予该用户 SUPER 权限(应谨慎授予此权限),则可以选择创建一个简单的过程来刷新审计日志并使用 SQL SECURITY DEFINER 执行该过程。
通过这种方式,我们可以使用具有 SUPER 的用户创建过程,然后将过程的 EXECUTE 授予应该被允许执行它的用户。
MySQL Server 5.5.28 及更高版本支持审计日志的自动轮换。
这是通过将 audit_log_rotate_on_size 选项添加到 MySQL 配置文件来实现的,该选项具有旋转日志的大小值。
例如当日志达到 1G 时轮转日志:
[mysqld] audit_log_rotate_on_size = 1G
大小也可以动态更改:
mysql> SET GLOBAL audit_log_rotate_on_size = 1024*1024*1024;
日期:2020-09-17 00:11:44 来源:oir作者:oir