在排除tomcat和前端没有出现中文乱码的情况下,MySQL 5.7在存储中文时依然出现乱码,一般是由于mysql默认字符集不是utf8导致的。
解决方案:
1、查看mysql当前字符集
首先登陆MySql命令行客户端:
mysql -u root -p
输入密码,进入mysql命令行后执行:
show variables like "%character%";
显示结果应该类似如下:
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin |
| character_set_results | utf8 |
| character_set_server | latin |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
可以看到有的字符集编码不是utf8
2、编辑MySql配置文件
Linux下,MySql的配置文件一般在/etc/mysql/mysql.conf.d/mysqld.cnf
vim /etc/mysql/mysql.conf.d/mysqld.cnf
在[mysqld]标签下加上以下内容:
character_set_server = utf8
3、重启MySql服务
service mysql restart