mysql中文乱码解决方案
现象
查看配置时,字符编码已经全是utf8,但查询时中文还是乱码:
原因
虽然查看字符编码时已经是utf8,但当数据库被连接时,可能还会是协商出其他的编码。
解决
需要强制将协商的编码都变成utf8;
/etc/my.cnf, /etc/mysql/my.cnf, ~/.my.cnf 这些就是mysql默认会搜寻my.cnf的目录
[mysqld]
增加以下四行:
character_set_server = utf8
collation-server=utf8_general_ci
skip-character-set-client-handshake
init_connect='SET NAMES utf8'
重启mysql。