解决Linux环境下xshell连接MySQL数据库中文乱码问题

本文介绍了在Linux系统中使用xshell连接MySQL数据库时遇到中文乱码问题的解决方案。首先通过运行`show variables like 'character%'`检查字符集设置,如果发现为Latin1,需要执行`set names utf8`来更改编码。接着,在配置文件`/etc/my.cnf`及子目录下的相关文件中添加或修改`default-character-set=utf8`或`character_set_server=utf8`。完成设置后,要删除并重新创建数据库以确保设置生效。
摘要由CSDN通过智能技术生成

首先在连接数据库的情况下运行show variables like 'character%' ;下图为正确示例

如果value值中出现Latinl

执行

set names utf8

执行SET NAMES utf8的效果等同于同时设定如下:
SET character_set_client='utf8';
SET character_set_connection='utf8';
SET character_set_results='utf8';

SET character_set_database='utf8';

SET character_set_system='utf8';

然后在/etc/my.cnf文件下手动配置[client]选项并在该选项下加入:default-character-set=utf8

在/etc/my.cnf.d目录下的mysql,mysqld,client文件下分别添加如上语句

default-character-set=utf8

character_set_server=utf8 

default-character-set=utf8 

注意:如果修改后不能启动报错试试把default-character-set=utf8改为character_set_server=utf8;我这里遇到了该问题,所以去掉了default后就正常了 ,脚本中没有使用default-character-set=utf8。

执行成功后一定要删除数据库,用drop database 数据库名称,重新建数据库,就可以啦。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值