MySQL管理工具MySQL Utilities — mysqlauditadmin(14)

MySQL 企业版本有日志审计的功能,社区版本是没有这功能的,并且启用了审计日志的插件。下面介绍的两款工具是针对审计日志的。

mysqlauditadmin 数据库管理员对审计日志的维护,监控审计日志的增长和控制日志轮滚。轮滚就是对当前日志进行归档整理。

可用的动作有:

  • copy复制审计日志。将 --audit-log-name 选项指定的审计日志复制到 --copy-to 选项指定的目录下。  --remote-login 选项可以用来从远程服务器复制日志。注意:当前用户需要有目的目录的写入权限。Windows平台不支持该选项的。
  • policy改变审计日志策略。使用 --value 选项指定策略值,可选值有:
    注意:该指令需要–server选项。从mysql5.6.20和 5.7.5 版本,该值仅从audit_log_policy变量读取。现在的策略结合下面两个变量audit_log_connection_policy和audit_log_statement_policy。这种改变从MySQL Utilities 1.5.2版本支持。
    • ALL: 所有事件日志
    • NONE: 没有日志
    • LOGINS:只有登录事件日志
    • QUERIES: 只有查询事件日志
    • DEFAULT: 设置默认日志策略
  • rotate_on_size设置审计日志文件自动轮转的大小阀值。 (audit_log_rotate_on_size 变量值). 该值通过–value选项设置,值范围在(0, 4294967295)之间。该指令也需要–server选项。注意:如果该变量值不是4096的倍数,则截断到最近的倍数值。
  • rotate按需执行审计日志轮转,只需要指定–server 选项。注意:如果审计日志大小小于4096该命令无效的。也就是 audit_log_rotate_on_size 变量的最小值。

选项:

实例:

显示审计日志的系统变量

手动轮转审计日志

显示审计日志统计信息

改变审计日志策略,仅记录查询事件,并显示

改变审计日志轮转大小,并显示执行rotate_on_size指令的前后系统变量

将审计日志复制到另一个地方去

将远程审计日志拷贝到当前位置

权限:

执行命令的用户必须要有从磁盘读取日志的权限和写入到目的目录的权限。