解决MySQL中文乱码方法

MySQL会出现中文乱码的原因一般为以下几点:

  1. server本身设定问题,例如还停留在latin1
  2. table的语系设定问题(包含character与collation)
  3. 客户端程式(例如php)的连线语系设定问题

进入MySQL 查看当前的状态

Snipaste_2018-01-31_16-34-46.png

默认的是客户端和服务器都用了latin1,所以会乱码。

解决的方法就是MySQL的字符串修改为utf8.

###第一种:

vim /etc/mysql/my.cnf 。**(5.5以前系统)**

client下面加入 ‘default-character-set=utf8’

mysqld下面加入’default-character-set=utf8’

Notice:注意 如果修改后不能启动报错试试把’default-character-set=utf8’改为’character_set_server=utf8’,仅仅加入到mysqld下面的.client就不需要加了

###第二种:

vim /etc/mysql/my.cnf 。**(5.5以后系统)**

1
2
3
4
5
6
[client]
default-character-set=utf8
[mysqld]
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci

五、重启MySQL

1
2
/etc/init.d/mysql stop   
/etc/init.d/mysql start

Comments

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×