日期:2014-05-16  浏览次数:20634 次

MySQL 第三方客户端工具显示中文乱码


通过第三方工具连接数据库,表中的中文显示为乱码,但是通过 MySQL 的命令行工具却没有问题。

字符集相关变量设置:
> SHOW VARIABLES LIKE '%character%';
Variable_name             Value                      
------------------------  ----------------------------
character_set_client      utf8                       
character_set_connection  utf8                       
character_set_database    latin1                     
character_set_filesystem  binary                     
character_set_results     utf8                       
character_set_server      latin1                     
character_set_system      utf8                       
character_sets_dir        d:\www\MySQL\share\charsets\

数据库创建信息:
> SHOW CREATE DATABASE db2011;
Database  Create Database                                                   
--------  -------------------------------
db2011  CREATE DATABASE `db2011` /*!40100 DEFAULT CHARACTER SET latin1 */

数据库使用的是默认的 latin1 编码。

解决方法很简单,重新下载一个低版本的客户端工具就 OK 了。我下载的是 SQLYog 5.02 也是网上推荐的。

个人估计问题有两个方面:一方面可能就是数据库设置的编码,另一方面主要问题还是客户端工具,估计高版本的软件是否在显示前设置了编码,才导致显示乱码。
所以建议大家创建数据库尽量指定编码为 GBK 或 UTF8