mysql中文乱码解决方案

来源:互联网 发布:网络pos机如何办理 编辑:程序博客网 时间:2024/04/29 12:12

两种方案,推荐第一种。

方案一:

修改my.ini文件

[mysqld]
character_set_server=utf8

[mysql]
default-character-set=utf8

注意:5.5之前版本,[mysqld]下的参数名是default-character-set(未测试)


方案二:

进入mysql后,使用以下命令修改:

set names 'utf8';


mysql> show variables like '%char%';
+--------------------------+-----------------------------------------------+
| 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       | D:\develop\mysql-5.6.13-win32\share\charsets\ |
+--------------------------+-----------------------------------------------+


查看表中所有character是否为同一个字符集,不同则用set修改,例如:set  character_set_server = 'utf8';


最后,可以用\s验证是否修改成功。

mysql> \s
--------------
mysql  Ver 14.14 Distrib 5.6.13, for Win32 (x86)


Connection id:          1
Current database:
Current user:           root@localhost
SSL:                    Not in use
Using delimiter:        ;
Server version:         5.6.13 MySQL Community Server (GPL)
Protocol version:       10
Connection:             localhost via TCP/IP
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8
TCP port:               3306
Uptime:                 9 min 35 sec


注意:字符集修改后,表得删了重建


0 0