解决ubuntu中mysql中文乱码问题

MySQL-5.5之前版本对字符编码方式修改的办法
1.以root登陆,在终端输入命令 vi /etc/mysql/my.cnf在打开的文件中
    找到[client]在下面加入
   default-character-set=utf8
   找到 [mysqld_safe]在下面加入
   default-character-set=utf8
   找到[mysqld]在下面加入
   default-character-set=utf8
   init_connect='SET NAMES utf8'
  找到[mysql]在下面加入
  default-character-set=utf8

2.重启mysql命令以便让上面的修改生效

停用命令:sudo mysqladmin shutdown -u root -p

         或  sudo /etc/init.d/mysql stop

启用命令:sudo /etc/init.d/mysql start

3.查看现在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/ |
+--------------------------+----------------------------+

4.原来建的库和表无法生效,新建的可以正常显示中文。

 

MySQL-5.5之后版本对字符编码方式修改的办法

     MySql-5.5之后的版本按照上面的方法修改,重启mysql数据库会出现Job failed to start!
        正确修改方法,在[mysqld]下添加的应该为:

character-set-server=utf8

collation-server=utf8_general_ci

init_connect='SET NAMES utf8'

        保存退出并重启即可!

posted on 2012-10-18 11:10  风林幻海  阅读(216)  评论(0编辑  收藏  举报

导航