ubuntu 下MySQL出现乱码的解决方法以及如何设置编码方式

本文介绍如何在Ubuntu 16.04 LTS系统中将MySQL的默认编码从latin1修改为utf8,并提供了详细的步骤说明及注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:
Ubuntu 16.04 LTS
5.7.19 MySQL Community Server

采用apt-get 安装MySQL默认编码是

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.01 sec)

注意:修改前请做好备份!!
修改编码为utf8

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
#
# The MySQL  Server configuration file.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

[mysqld]
character_set_server  =  utf8
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
log-error       = /var/log/mysql/error.log
# By default we only accept connections from localhost
bind-address    = 127.0.0.1
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

在[mysqld]下添加 character_set_server = utf8
注意:
有关 Server System Variables 请参考官方文档:http://dev.mysql.com/doc/mysql/en/server-system-variables.html

上面 修改编码是添加character_set_server 而不是default-character-set

重启MySQL生效:

systemctl restart mysql.service

参考:
http://blog.youkuaiyun.com/xlgen157387/article/details/52781632

http://blog.youkuaiyun.com/wangchangshuai0010/article/details/12714575

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值