【数据库\Linux】一分钟Linux下MySQL编码问题

标题图片

       时隔半个月,我又回来啦!这段时间忙着把作品放服务器上,调整了不少东西,发现这个玩意儿及其的致命,而且网上挺多方法的但是也没有太具体,可能是本人检索资料能力有限吧,花点儿时间写下来让方便大家也方便自己再次查阅。

       我们先看一下问题所在哈,如下图所示,Linux操作系统,配置在之前一篇文章《【Linux\云服务器\Java】十分钟带你征服阿里云Java Web环境部署》中讲过,就不重复赘述了。不过图上的结果也是我修改过一部分的了,先将就着看吧,其实都差不多的。使用以下命令查看下图MySQL内编码。

show variables like 'character_set_%';
下面这个也行
show variables like '%char%';

问题描述

       一般情况下哈,我们打开我们的MySQL后,不止character_set_databasecharacter_set_server两个是latin1这么简单,基本你在图上看到的value为utf8的基本都是latin1。。。。

       好,我们看看网上是什么样的方法,用这个方法确实能达到一定的效果,就是刚上图所示的还剩两个没改完的方法:

Set Names 'utf8';

       或者是与其等价的三个命令:

set character_set_client=utf8;
set character_set_results=utf8;
set character_set_connection=utf8;

       上诉命令完成后,我就得到了之前那张图的结果,然后继续测试我的WebApp还是编码有问题,返回来看到server和databases还是没有改回来,我就仿照上述的三个命令,试了试:

set character_set_server=utf8;
set character_set_databases=utf8;

       再次调用一次命令查看它们,非常之惊喜!成功了!但是看过我几篇博文的童鞋肯定觉得没这么简单,这么简单我就不会写出来了[苦笑]

       一般我们对MySQL进行设置之后都会重启一次的,重启之后,很高兴,我们真的没这么幸运!

       还是除了server和databases没改过来。。。

       于是我在网上又发现了个修改MySQL配置文件my.cnf的方法:

  1. 找到my.cnf文件
  2. 在[client]字段末尾加入default-character-set=utf8;
  3. 在[mysqld]字段末尾加入character-set-server=utf8;
  4. 在[mysql]字段末尾加入default-character-set=utf8和init-connect=’set names utf8’

       大致就这么一个不骤,看上去非常的高逼格,但事实也应该是挺不错的,可能会有点儿问题,因为我在N多次试验的过程中,重启MySQL有时候会导致什么PID错误无法启动MySQL,这个很头疼,重启一遍服务器又没事了,挺神奇的。

       然而更惊奇的是,我服务器上的my.cnf文件内容很惊奇,没有上述说的那些加方括号的标签内容,截图看一下:

my.cnf原始文件内容

       真的!我真的只有这些!!!

       不知道什么原因,内容少得可怜,我也只能硬着头皮加了点儿东西上去:

my.cnf内容

       其实也就是加相应的一些上述文章的配置,加完了以后:wq保存一下,返回来看居然成功了!

成功图

       总结一下,其实网上这些文章挺管用的,只是有些地方写的还不够仔细,我就把我的经历经过都写出来,毕竟是处于学习阶段的,不会的操作、不会的细节都是很多的,很粗糙,因此也会走很多新人的弯路,再此写出来让更多的新手能够看到这些经历,能碰到和我一样的最好了,我的文章就能帮到你大忙,希望早点儿能完工,继续学习新的技术!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值