在使用mysqlbinlog分析日志时,报错:

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

原因分析:

产生这个问题的原因是因为我在my.cnf中的client选项组中添加了:
 default-character-set=utf8
这个是mysqlbinlog的一个bug

解决方法:

使用mysqlbinlog工具查看二进制日志时会重新读取的mysql的配置文件my.cnf,而不是服务器已经加载进内存的配置文件。
只要修改并保存了my.cnf文件,而不需要重起mysql服务器。
所以这里可以使用此方法:把client选项组中default-character-set=utf8选项屏蔽掉,如
 
#default-character-set=utf8
 
然后运行mysqlbinlog工具,则不会产生任何问题了。当然记得在不在使用mysqlbinlog工具时,把#default-character-set=utf8
选项恢复为default-character-set=utf8;