[root@MySQLDB002 lib]# more /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 default-character-set=utf8 character-set-server=utf8 [client] default-character-set=utf8 character-set-client=utf8 [mysql] default-character-set=utf8 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
網上有資料說這個是mysqlbinlog的一個bug,但是搜索外文資料並沒有搜索到相關信息,雖然還是並沒有徹底弄明白原因,但是不妨自己驗證了一下下面幾種解決方面 解決方法1:屏蔽character-set-client=utf8,此時連接MySQL語句沒有問題。 解決方法2:使用loose-default-character-set=utf8 loose-選項,loose為寬松的, 散漫的, 自由的意思,在選項前加了loose-,則當程序不認識此選項時會略過此選項,並給出一個警告。測試亦可解決問題。