mysql命令行读取数据库中文出现乱码问题

本文分享了解决MySQL中文乱码的经验,通过升级Navicat版本及调整编码设置,最终实现中文正常显示。涉及数据库版本、Navicat版本、字符集配置等关键步骤。

遇到mysql中文乱码问题

 

数据库

背景:数据库版本6.0,Navicat版本11,系统版本win10

管理工具用的是Navicat 11,连接数据库是报错Unknown character set: 'utf8mb4',起初并没有太在意这个问题,因为第一次用Navicat时并没有出现这个问题,右键“编辑连接”在“高级”里的编码选择utf8后问题消失,这也导致后来无论怎么更改字符编码都没有效果,还是会出现中文乱码

原来安装mysql的时候默认字符编码是utf8,之后建立数据库,建表,字段都是用的utf8编码,在表里面插入中文后,在mysql命令行读取数据库数据的时候,中文出现乱码,百度后得知mysql命令行智能显示gbk编码的中文

于是尝试运行以下命令,之后再次查询,依然出现中文乱码

在尝试了更改my.ini文件等各种方法后,依然没有解决乱码的问题,

 

最后才考虑到可能是Navicat版本和mysql版本不一致,于是下载Navicat12,安装完后连接数据库(此时就没有报Unknown character set: 'utf8mb4的错误)插入中文数据,在命令行重新查询,成功显示中文(查询之前记住要把character_set_results的编码改为gbk)。

参考文章:

https://blog.csdn.net/fenfei12138/article/details/49661879

https://blog.csdn.net/zi1shi/article/details/82345457

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值