Linux下解决MySQL中文无法储存的问题

来源:互联网 发布:java 运行环境下载32 编辑:程序博客网 时间:2024/06/08 00:28

问题总是重复的

其实很久以前,我就解决过这个问题。当时也是查了许多资料,资料也是散乱不堪。当时还没有随手记录的习惯,于是就这么随意的解决了,也就解决了,不再去管这部分的问题。可是很不幸,就在刚才我又遇到了。

方法有很多

方法有很多,但是能具体应用到自己的开发环境中并且解决问题的也就这么几个。这里引用到panjican的博客,向前辈致敬。

进入mysql,输入以下命令:

 show variables like 'character_set_%';

不能显示汉字就是因为character_set_database 的Value值为latin1;
下面是解决方法:
首先输入以下 #gedit /etc/mysql/my.cnf.cnf文件进行编辑,添加下面的语句:

    [client]    default-character-set=utf8    [mysqld]    default-storage-engine=INNODB    character-set-server=utf8    collation-server=utf8_general_ci

添加完以后,保存,然后重启MySql服务。
/etc/init.d/mysql restart
重新进入mysql

 mysql -uroot -p

再次查看字符集配置确保character_set_database修改为utf-8
之后我们可以新建数据库,便可以在其中存储中文了。
注意,之前的数据库字符集编码并不会改变,所以我们需要重新建立数据库,并且制定字符集,确保能储存中文。

CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci; 

与诸君共勉。

原创粉丝点击