Linux下修改MySQL的字符集编码为UTF8

摘要

MySQL安装后的默认字符集如果不是UTF8,可能会有中文乱码等情况发生,只需修改字符集编码为UTF8即可解决。

MySQL安装后的默认字符集如果不是UTF8,可能会有中文乱码等情况发生,只需修改字符集编码为UTF8即可解决。

一、查看默认编码

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       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

可以看到,character_set_databasecharacter_set_server的默认字符集是latin1文章源自新逸网络-https://www.xinac.net/8862.html

二、最佳修改方法

修改mysqlmy.cnf配置文件文章源自新逸网络-https://www.xinac.net/8862.html

(1)[client]节点文章源自新逸网络-https://www.xinac.net/8862.html

[client]
...
default-character-set=utf8

(2)[mysqld]节点文章源自新逸网络-https://www.xinac.net/8862.html

[mysqld]
...
character-set-server=utf8

(3)[mysql]节点文章源自新逸网络-https://www.xinac.net/8862.html

[mysql]
...
default-character-set=utf8

(4)注意mysqld节点和另外两个节点的属性名称不同,注意区分!文章源自新逸网络-https://www.xinac.net/8862.html

三、测试效果

配置文件修改后重启mysql服务生效。文章源自新逸网络-https://www.xinac.net/8862.html

重启服务后查看效果:文章源自新逸网络-https://www.xinac.net/8862.html

mysql> SHOW VARIABLES LIKE 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

四、补充说明

如果还有乱码,可以试试以下方法。文章源自新逸网络-https://www.xinac.net/8862.html

[mysqld]
...
character-set-server = utf8
init-connect         = 'SET NAMES utf8'

效果相当于:文章源自新逸网络-https://www.xinac.net/8862.html

SET character_set_client     = utf8;
SET character_set_results    = utf8;
SET character_set_connection = utf8;

一般经过以上配置,可解决所有的编码问题了,还有问题的可留言。文章源自新逸网络-https://www.xinac.net/8862.html


 文章源自新逸网络-https://www.xinac.net/8862.html 文章源自新逸网络-https://www.xinac.net/8862.html

weinxin
新逸IT技术
扫一扫关注微信公众号
Admin
  • 本文由 发表于 2020-07-27
  • 转载请注明:https://www.xinac.net/8862.html
MySQL主从复制配置 运维笔记

MySQL主从复制配置

主从复制是指一台服务器充当主数据库服务器,另一台或多台服务器充当从数据库服务器,主服务器中的数据自动复制到从服务器之中。 对于多级复制,数据库服务器即可充当主机,也可充当从机。MySQL主从复制的基础...
评论  0  访客  0
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定