请选择 进入手机版 | 继续访问电脑版

我爱学习网

 
查看: 9160|回复: 0

ubuntu下解决mysql插入中文乱码的问题

[复制链接]
发表于 2015-2-26 13:40:05 | 显示全部楼层 |阅读模式
本帖最后由 DataCore 于 2015-2-26 14:02 编辑

一.原因

    myeclipse中插入中文发现不仅在mysql中且在myeclipse中查询都显示???


二.解决

    网上看了很多资料,如果在mysql中直接修改,重启mysql后就失效,一般修改my.ini文件

    但在我进行修改的过程中发现:

        找到[mysqld]在下面加入
        default-character-set=utf8
        init_connect='SET NAMES utf8'

一旦将mysqlId修改,再次启动mysql会报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'

    找了很多方法,都不是很有效,本人反而在一次修改my.cnf中不小心删除了全部的文件,不得不重新安装mysql


三.mysql的重装

省略...


四.继续解决乱码问题

安装完成,查看当前编码设置


|character_set_client            | utf8                                  |

| character_set_connection | utf8                                  |
| character_set_database     | utf8                                  |
| character_set_filesystem    | binary                              |
| character_set_results          | utf8                                 |
| character_set_server           | latin1                               |
| character_set_system          | utf8

发现

character_set_server

还是latin1   原因找到,下面进行解决,原来原因在此~

其他的还跟上面一样,只有在[mysqld]下面添加的

default-character-set=utf8

改为:

character-set-server=utf8

尝试修改

输入命令sudo service mysql restart重新启动mysql,启动成功!再查看编码为:

+--------------------------+----------------------------+
| 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                        |


再次运行junit测试,插入中文成功!!!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回列表 返回顶部