mysqlbinlog查看二进制日志时的一个问题

发布时间:2020-01-03编辑:脚本学堂
本文介绍下,在用mysqlbinlog命令查看日志时遇到的一个问题,及解决方法。有需要的朋友参考下。

在使用mysqlbinlog查看日志时,出现一个错误提示如下:
 

/usr/local/mysql/bin/mysqlbinlog: unknown variable 'default-character-set=utf8'

原因分析,是由于在my.cnf中的client选项组中添加了:
default-character-set=utf8

这里提供二个解决这个bug的方法。
方法1,使用:--no-defaults
 

./mysqlbinlog --no-defaults mysql-bin.000063

方法2,使用mysqlbinlog工具查看二进制日志时会重新读取的mysql的配置文件my.cnf(windows下是my.ini),而不是服务器已经加载进内存的配置文件。
只要修改并保存了my.cnf文件,而不需要重起mysql服务器,则使用mysqlbinlog查看时修改后的my.cnf配置文件对mysqlbinlog而言已经生效。

可以使用此方法:把client选项组中default-character-set=utf8选项屏蔽掉,例如:
 

#default-character-set=utf8

然后运行mysqlbinlog工具,则不会产生任何问题了。

不再使用mysqlbinlog工具时,记得把#default-character-set=utf8选项恢复为:default-character-set=utf8。

就是这样了,希望以上的方法,可以帮助大家解决这个问题。