本文作者:念宗

mysql select显示乱码的问题

念宗 6年前 ( 2018-11-22 ) 3757 抢沙发
摘要: 进入mysql后select结果中文显示乱码:先查看字符相关编码[一般有6个相关变量]:mysql> show variables like'%char%&...
进入mysql后select结果中文显示乱码:
先查看字符相关编码[一般有6个相关变量]:

mysql> show variables like'%char%';

查看表的字符编码:
mysql> show create table user \G;

默认可能都是latin1的编码,需要改成utf8,方法如下:


mysql> set character_set_database=utf8;
mysql> set character_set_server=utf8;
mysql> set character_set_results=utf8;
character_set_system这个是不能通过set指令进行修改的,是只读变量。
character_set_results这个就是mysql交互环境里select显示编码变量;
下面两个变量是设置客户端的,Linux可以设置utf8,Windows可以设置成gbk
set character_set_client=utf8;
set character_set_connection=utf8;
上面set只是针对mysql登录会话期间的改变,重新登录mysql又会变回原来的编码,要想永久生效必须修改my.cnf配置文件
设置my.cnf中的默认编码:
[mysqld] 
character-set-server=utf8 
[client] 
default-character-set=utf8 
[mysql] 
default-character-set=utf8            #单独添加这个设置的是character_set_results变量生效,但是结合mysqld 添加则是会全部变量生效


文章版权及转载声明:

作者:念宗本文地址:http://pyops.net/?id=42发布于 6年前 ( 2018-11-22 )
文章转载或复制请以超链接形式并注明出处运维之道

分享到: 网站分享代码

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

发表评论

快捷回复:

验证码

评论列表 (暂无评论,3757人围观)参与讨论

还没有评论,来说两句吧...