遇到一个非常奇怪的问题,mysql命令行下无法输入中文,但是在操作系统层是没有问题的,进入mysql命令行看就无法正常输入,无论如何设置set names,或者是启动前附加--default-character-set均不行,复制粘贴字节的方式也不
行,不过浏览包含中文字符的表或字段倒能够正常显示~~
网上搜索,看到有不少人提到这个问题,但多都是通过set names gbk的方式就可以解决,情况与我当前遇到的并不相同。
经过本地多番的尝试可以确定与MySQL服务没有关系,应该还是客户端本地操作系统的原因。
因为从有问题的客户端连接任何MySQL数据库均无法输入中文字符,而从正常的客户端连接任何MySQL数据库均能正常输入字符。
在网上搜索的过程中,看到有网友提到设置操作系统层的LANG变量,指定字符集,我按照其中的一些案例,设置成GBK或UTF-8,但均无果~~~
也不能说无果,因为多次调试后发现情况有了些变化,如下:
mysql>
-> ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '会影' at line 1
而之前是完全不接受任何中文字符的,现在,如上所示,字符实际上是输入了的,但没有显示出来,这点非常的奇怪~~
最后,尝试export LANG="zh_CN.GB18030",然后mysql客户端中就能输入中文了~~
如果有谁遇到过类似的情况,可以参考我尝试的步骤去处理,也许能够解决问题~~~
不过如果更深入一些,对比其它正常客户端上LANG变量,发现五花八门,设什么的都有,GBK/ZHS16GBK/UTF-8等,也未发现问题~~
怀疑仍然是跟操作系统有关系,虽然当前从现状看解决了问题,但实际缘由还是没有搞清楚,如果哪位朋友遇到过类似问题并且找到了明确的答案,欢迎向我答疑解惑~~~
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7607759/viewspace-717020/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7607759/viewspace-717020/