MySql的client是在dos界面上,然而dos界面默认的字符集编码方式是:GBK
(1).MySql字符转换原理图
(2).查看server的全部编码方式:
>show variables like 'character%';
#设置client为GBK:
>set character_set_client=gbk;
#设置连接器使用UTF8
>set character_set_connection=utf8;
#假设有返回值。设置返回值的以GBK的编码方式:
>set character_set_results=gbk;
注意:这些只限制于当前的dos黑屏界面。重新启动后又恢复原样了。
假设想彻底改变。则进入MySql安装文件里,改动my.ini配置文件。找到client 中的:default_character_set=gbk;
(仅仅改动client即可了)
(4)用set names gbk;(能够一次性的将这三种设置同样的格式)
(5)总结:理解上面的原理图后,因此解决乱码问题二种方案:
1>在当前MySQLclient改动输入和输出的MySQL环境变量为GBK或GB2312(当前有效)
2>改动MySQL文件夹下的my.ini文件,将client的缺省编码方式改为GBK或GB2312,注意。须要又一次启动MySQL服务