`

RHEL5 下更改mysql5默认编码(字符集)

 
阅读更多

# /etc/init.d/mysql start (stop) 为启动和停止服务器
# /etc/my.cnf   MySQL主要配置文件

 

启动mysql后,以root登录mysql

# /usr/local/mysql/bin/mysql -u root -p

 

RHEL5 <wbr>下更改mysql5默认编码(字符集)

 

mysql> show variables like 'character%'; #执行编码显示

 

RHEL5 <wbr>下更改mysql5默认编码(字符集)

在某些时候,我们续要修改mysql默认数据库的编码,以保证某些迁移的程序可以正常显示,编辑my.cnf文件进行编码修改,windows可以直接用Mysql Server Instance Config Wizard 进行设置

在linux下修改3个my.cnf的1个/etc/mysql/my.cnf文件

找到客户端配置[client] 在下面添加
default-character-set=gbk 默认字符集为gbk
在找到[mysqld] 添加
default-character-set=gbk 默认字符集为gbk
init_connect='SET NAMES gbk' (设定连接mysql数据库时使用gbk编码,以让mysql数据库为gbk运行)

修改好后,重新启动mysql 即可,查询一下show variables like 'character%';
RHEL5 <wbr>下更改mysql5默认编码(字符集)
此方法用于标准mysql版本同样有效,对于/etc/my.cnf文件,需要从mysql/support-files的文件夹cp my-large.cnf一份到/etc/my.cnf

摘自http://blog.sina.com.cn/s/blog_5f49e1210100d3g7.html

 

注释:

修改之后往表里插入汉字字段出现

Incorrect string value: '\xBA\xC3titl...' for column

的异常

----查阅得知:

先确保改过来之后重启了服务,然后就在建成的表中用show create table tabblename;查询一下建表用的字符集是什么形式,就发现了是用的latin1,想想当时是用latin1字符建成的表,就是现在改了字符集也只对以后的建表有作用,以前建好的表就无能为力了,所以我删除表后重建就好了,查询一下字符集,果然改回来了。

 

我删除了表后重新建,发现还是不行,不得已,删了数据库,重建库,才发现编码已经改了

通过终端查看,发现还是乱码,我了个靠

想到有可能是终端编码问题,遂修改终端的编码为GBK  OK!!!!!

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics