首页 > 数据库技术 > 详细

mysql5.7中解决中文乱码的问题

时间:2016-09-30 12:08:24      阅读:184      评论:0      收藏:0      [点我收藏+]

在使用mysql5.7时,会发现通过web端向数据库中写入中文后会出现乱码,但是在数据库中直接操作SQL语句插入数据后中文就显示正常,这个问题怎么解决呢?此处不对mysql的数据编码过程和原理进行讲解,如果有兴趣的同学可以自己百度。

下面我们就直接使用如下操作解决:

 

一、打开mysql控制台,输入命令show variables like ‘character%‘;

  显示如下:

  +--------------------------+-------------------------------------------+
| Variable_name      | Value                   |
+--------------------------+-------------------------------------------+
| character_set_client   | latin1                  |
| character_set_connection | latin1                  |
| character_set_database  | utf8                   |
| character_set_results  | latin1                  |
| character_set_server   | utf8                   |
| character_set_system   | utf8                   |
| character_sets_dir    | C:\MySQL\MySQL Server 5.0\share\charsets\ |
+--------------------------+-------------------------------------------+

二、修改my.ini文件

  [client]

  default-character-set=utf8

  [mysqld]
  default-storage-engine=INNODB
  character-set-server=utf8
  collation-server=utf8_general_ci

三、重启后使用第一步的命令查看,如下:

  +--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

还有character_set_database和character_set_server的默认字符集还是latin1。

四、输入命令:set names utf8;

  重启后,使用第一步命令查看:

+--------------------------+------------------------------------------------+
| Variable_name | Value |
+--------------------------+------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\wamp64\bin\mysql\mysql5.7.9\share\charsets\ |
+--------------------------+------------------------------------------------+

除了character_set_filesystem是binary外,其他都是utf8了,

这样在web端也设置成utf8编码就可以正常输入数据库了。

mysql5.7中解决中文乱码的问题

原文:http://www.cnblogs.com/songdada119/p/5923219.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!