本文介绍下,linux环境中mysql字符编码问题的解决办法,有遇到mysql编码问题的朋友,可以参考下本文的介绍,希望对你有一定的帮助。
本节内容:
linux下mysql字符编码问题
mysql的字符编码,这里使用fedora11下默认安装mysql5.1。
复制代码代码示例:
$mysql --user=root --password=123456789
登录成功:
复制代码代码示例:
mysql>show variables like 'character%'; //查看当前数据库的字符编码
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | latin1 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | latin1 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
由以上编码方式,也可以看出输入中文之后显示出来都是“???”。
有效的解决方法是:找到mysql的配置文件my.cnf进行修改。
1、#gedit /etc/my.cnf
2、在弹出的编辑器中,找到[mysqld],在下面添加
复制代码代码示例:
default-character-set=utf8 //默认字符集为utf8
init_connect='SET NAMES utf8' //(设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)
init_connect='SET NAMES utf8' //(设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)
3、找到(或添加)[client],在下面添加:
复制代码代码示例:
default-character-set=utf8 //默认字符集为utf8
4、保存后退出,并重启mysql服务。
您可能感兴趣的文章:
mysql中utf-8编码数据库转换成GBK编码的问题
修改mysql默认编码的方法(windows环境)
mysql字符编码的问题
mysql 编码设置一例