mysql乱码问题解决办法

最近开发一下小项目,遇到了最常见的乱码问题。

1、数据库使用utf-8  utf-8_generic_ci编码,使用csv上传并导入数据,插入数据的时候出现了问题,有很大部分数据没有被导入,所以使用mb_convert_encoding 转成UTF8,结果都是乱码,后来转成了GBK,OK

mb_convert_encoding($v, "utf-8" ,"GBK");

2、数据输出问题,显示正常,在Windows下的Navicat客户端(Mysql为Win)显示正常,PHP页面(页面UTF8)显示正常;

3、在Linux下mysql命令行显示异常

这个解决办法有,操作很多不知道是什么启的作用。因为我每做一步都会去验证,我的操作从后向前一步一步倒着写,没准第一步就OK了:

最后一步:修改/etc/my.cnf  

添加:

default-character-set=utf8

[mysql]
default-character-set=utf8

记得重启MYsql服务

前一步:更改数据库编码  路径为  /var/lib/mysql/[你的数据库名]/db.opt

default-character-set=utf8
default-collation=utf8_general_ci

其余的基本上差不多的操作就不写了

原文地址:https://www.cnblogs.com/picaso/p/3459206.html