关闭

Ubuntu 7.04 下MySQL中文乱码的解决

标签: mysqlubuntucharactervariablesjdbcshell
1600人阅读 评论(2) 收藏 举报
分类:
 Ubuntu 7.04 下用源安装了MySQL。默认情况下,用mysql shell登录创建数据库创建表插入中文数据后,用select查出来是中文,但用JDBC连接就出现乱码。网上搜索到解决方法,如下(先备份数据):

修改/etc/mysql/my.cnf
sudo gedit /etc/mysql/my.cnf

在my.cnf文件中的[client]段和 [mysqld]段加上以下两行内容:
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8

需要重启mysql服务
停用:
sudo mysqladmin shutdown -u root -p
然后输入mysql的root用户的密码
启用:
sudo mysqld_safe -user=mysql &

查看一下现在mysql的编码
sudo mysql -u root -p

mysql>show variables like 'character%';
+--------------------------+----------------------------+
| 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/ |
+--------------------------+----------------------------+

现在不管在mysql shell下还是JDBC都可以正常显示中文了。但之前的数据还是不行,所以在这之前得先备份数据,修改完编码后再导入。

参考文章
http://www.lpi-china.org/bbs/viewthread.php?tid=3219
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:74343次
    • 积分:1019
    • 等级:
    • 排名:千里之外
    • 原创:26篇
    • 转载:15篇
    • 译文:0篇
    • 评论:19条
    文章分类
    最新评论