Centos 下Mysql 解决中文乱码问题

本文详细介绍了解决MySQL数据库中文乱码问题的根源方法。通过修改MySQL配置文件my.cnf中的字符集设置,将默认字符集从latin1更改为UTF8,确保在数据库层面支持中文字符,从而避免乱码情况发生。

Mysql是我们项目中非常常用的数据型数据库。但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况。下面就来介绍一下如何彻底解决数据库中文乱码情况。

查看Mysql编码

e02eea6aa60987fbf1dedc5221403527496.jpg

    这里我们可以看character_sert_database与character_set_server的字符集都是latin1.那么在mysql数据库中,server,database,table的字符集都默认是latin1.如果想解决乱码问题,必须把以上的字符集设置为UTF8才可以。

设置编码格式为UTF8

    以下通过修改mysql配置文件/etc/my.cnf,来设置 Mysql的编码格式,这是一个全局设置。

    在配置文件中添加以下内容,就可以完成设置:

[mysqld]
character-set-server=utf8 
[client]
default-character-set=utf8 
[mysql]
default-character-set=utf8

    请注意这几个参数配置的位置,不然可能会启动不起来mysql服务:

db924bbf11e7ed741120ecbe1bb9276aa6f.jpg

    OK。这下如果你重启mysql服务也会发现它的字符集是utf8.

558f8fbee15466f4d41d665ecd170ee441e.jpg

    完成之后我们创建表的时候不需要指定字符编码,它默认就是utf8;

    网上很多答案都是直接在session级别设置mysql的字符编码,这是治标不治本的方法。我们还是要从源头上解决这个问题。那就是修改mysql默认的配置文件,把它的字符集修改成能够使用中文字符的UTF8就OK了。

转载于:https://my.oschina.net/sdlvzg/blog/2209575

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值