如何修改Percona MySQL审计日志的时间戳格式
解决Percona MySQL审计日志时间戳UTC转Z格式问题
问题原因
审计日志的时间戳格式由Percona专属的audit_log插件参数控制,与服务器系统时区或MySQL的time_zone参数无关,因此修改服务器时区无法改变该格式。
解决步骤
1. 查看当前审计日志配置
登录MySQL执行以下命令,确认审计插件的相关参数:
SHOW GLOBAL VARIABLES LIKE 'audit_log%';
重点检查audit_log_format是否为JSON(你的日志是JSON格式,该参数应为JSON),以及当前audit_log_timestamp_format的值。
2. 临时修改时间戳格式(即时生效,重启后失效)
执行以下SQL语句,将时间戳格式切换为ISO 8601的Z格式:
SET GLOBAL audit_log_timestamp_format = 'iso8601';
3. 永久修改(重启后仍生效)
编辑MySQL配置文件(通常是/etc/my.cnf或/etc/my.cnf.d/mysql-server.cnf),在[mysqld]段添加以下配置:
[mysqld] audit_log_timestamp_format = iso8601
4. 重启MySQL服务使配置生效
在RHEL系统上执行:
systemctl restart mysqld
5. 验证结果
执行一些测试SQL(如SELECT 1;),然后查看审计日志文件(路径可通过audit_log_file参数查看),确认时间戳格式已变为"timestamp":"2024-10-03T10:57:54Z"。
注意:该参数仅在Percona Server 8.0.26及以上版本支持,如果你的版本较低,需要先升级Percona Server到对应版本。
内容的提问来源于stack exchange,提问作者Raja
相关产品推荐
相关产品推荐

