今天,登陆数据库服务器的时候,出现了下面的错误:

1 [root@localhost app]# mysql -uroot -p
2 mysql: unknown variable 'character-set-client=utf8'

查了下my.cnf的配置文件,是在client段下面配置了这么一个选项,按道理来说,是不会有问题的呀,然后上网google了下,发现:

了解到这个是mysqlbinlog的一个bug。 既然client选项组里允许通过character_set_client选项设置客户端编码,为何自带的工具mysqlbinlog却不认识这个选项?

在这里即使不认识,那也用不着直接出错而退出运行,若是不认识这个选项那只要略过此选项(能给出个notice提示下不认识此选项则更好)继续运行岂不更好?

但是有一个问题是,我在mysqld段下面使用character-set-server  = utf8是没有问题的。

因此,我的解决方案是:将上面的character_set_client=utf8进行注释了,然后再进行重启,这样登录进来的时候,只剩下client端的编码不是UTF8的,因此我们在使

用set global character_set_client=utf8;设置即可,这样的话整个数据库的编码全都是utf8的了。

1 Server characterset:    utf8
2 Db     characterset:    utf8
3 Client characterset:    utf8
4 Conn.  characterset:    utf8

 

posted on 2015-07-01 17:40  shangzekai  阅读(4919)  评论(0编辑  收藏  举报