mysql建库 字符集_告别乱码:修改MySQL数据库的默认字符集

在上篇文章里说到,网站会出现乱码的原因已经找到了,都是因为Mysql数据库的字符集不统一!所以,要解决乱码的问题,只要把Mysql数据库的字符集统一就起,就万事OK了!这里教大家怎样修改Mysql数据库的默认字符集。

想必大家做的大部分也都是中文站,笔者推荐大家做站都尽量的使用UTF-8的编码格式。至少UTF-8编码格式的好处,笔者这里就不在多说了,感兴趣的朋友可以去GG一下。修改mysql的默认字符集是通过修改它的配置文件来实现的。一般分两种情况:

Windows平台:

windows下的mysql配置文件是my.ini,一般在Mysql安装目录的根目录下面,打开配置文件,找到default-character-set项,直接修改为:

default-character-set=utf8

然后重新启动mysql,就可以了!

还有一种修改字符集的方法,就是使用mysql的命令:

mysql>SETcharacter_set_client=utf8;

mysql>SETcharacter_set_connection=utf8;

mysql>SETcharacter_set_database=utf8;

mysql>SETcharacter_set_results=utf8;

mysql>SETcharacter_set_server=utf8;

mysql>SETcollation_connection=utf8;

mysql>SETcollation_database=utf8;

mysql>SETcollation_server=utf8;

类Unix平台

在类Unix平台下,方法跟Windows平台下面类似,只是配置文件的存放目录与Windows系统下的不太一样,linux下的mysql配置文件是my.cnf,一般是/etc/my.cnf,如果找不到可以用find命令找一下:

find / -iname my.cnf

找到default-character-set项,直接修改为:

default-character-set=utf8

然后重新启动mysql,就可以了!

注意:

一般就算设置了表的默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。问题就出在这个connection连接层上。解决方法是在发送查询前执行一下下面这句:

SET NAMES 'utf8';

它相当于下面的三句指令:

SETcharacter_set_client=utf8;

SET character_set_results=utf8;

SET character_set_connection=utf8;

总结:

因此,使用什么数据库版本,不管是3.x,还是4.0.x还是4.1.x,其实对我们来说不重要,重要的有二:

1) 正确的设定数据库编码.MySQL4.0以下版本的字符集总是默认ISO8859-1,MySQL4.1在安装的时候会让你选择。如果你准备使用UTF- 8,那么在创建数据库的时候就要指定好UTF-8(创建好以后也可以改,4.1以上版本还可以单独指定表的字符集)

2) 正确的设定数据库connection编码.设置好数据库的编码后,在连接数据库时候,应该指定connection的编码,比如使用jdbc连接时,指定连接为utf8方式.

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2011-02-21 11:58

浏览 1456

分类:数据库

评论

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值