Heim  >  Artikel  >  Datenbank  >  Ubuntu 15.04下MySQL 5.6.25不支持中文解决办法

Ubuntu 15.04下MySQL 5.6.25不支持中文解决办法

WBOY
WBOYOriginal
2016-06-07 14:59:121050Durchsuche

Ubuntu 15.04下MySQL 5.6.25不支持中文解决办法

Ubuntu 15.04下MySQL 5.6.25不支持中文解决办法,apt-get install 安装的,,不是源码包安装的mysql。

1 修改mysql的配置文件

/etc/mysql/conf.d/mysql.cnf

在[mysql]的下方加入如下语句:(注:这个文件下没有配置,只有【mysql】)

no-auto-rehash
default-character-set=utf8

/etc/mysql/mysql.conf.d/mysqld.cnf

在[mysqld]下加入

socket = /var/run/mysqld/mysqld.sock
port = 3306
character-set-server=utf8 (这里是server,之前有的版本是set)

重启mysql: sudo /etc/init.d/mysql restart

查看字符集

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      | /usr/share/mysql/charsets/ |

+--------------------------+----------------------------+

8 rows in set (0.00 sec)

设置之后如果之前的数据库已经创建了,只能删除重新创建了。

--------------------------------------分割线 --------------------------------------

解决步骤现总结如下:

1 修改mysql的配置文件

    /etc/mysql/conf.d/mysql.cnf

    在[mysql]的下方加入如下语句:

    no-auto-rehash
    default-character-set=utf8

  /etc/mysql/mysql.conf.d/mysqld.cnf

    在[mysqld]下加入

    socket       = /var/run/mysqld/mysqld.sock
    port       = 3306
    character-set-server=utf8 等内容,自行对比,有的就不用加了,一般只需要加入 character-set-server=utf8

这时候shell 进入mysql,执行:show variables like 'character%' , 结果如图:

Ubuntu 15.04下MySQL 5.6.25不支持中文解决办法

重启mysql: sudo /etc/init.d/mysql restart

Error Code: 1366. Incorrect string value: '\xE5\xBC\xA0\xE4\xB8\x89' for column 'ename' at row 1

这是因为该表的字符集不支持中文所致,执行show create table  new_table 查看建表语句可知

解决办法:将该表删除,新建,支持中文的关键在于建表选择的字符集

本文永久更新链接地址

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn