下午在排查MySQL主從同步問題時,想從主庫的binlog中找一些線索,裸的binlog文件是無法直視的,mysqlbinlog這個工具是用來查看binlog文件內容的(使用方式man mysqlbinlog查看),但是使用mysqlbinlog將binlog文件轉換成人類可讀的內容時卻報錯:
[xxx@dbhost log]$ mysqlbinlog mysql-bin.000004 mysqlbinlog: unknown variable 'default-character-set=utf8'
原因是mysqlbinlog這個工具無法識別binlog中的配置中的default-character-set=utf8這個指令。
兩個方法可以解決這個問題
一是在MySQL的配置/etc/my.cnf中將default-character-set=utf8 修改為 character-set-server = utf8,但是這需要重啟MySQL服務,如果你的MySQL服務正在忙,那這樣的代價會比較大。
二是用mysqlbinlog --no-defaults mysql-bin.000004 命令打開
好吧,這篇文章含金量太低,好記性不如爛筆頭,還是記錄一下吧。。。。