mysql不乱码的思想总结

不乱码的思想:中文环境下建议选择utf-8

1、linux服务器端的设置:

1 [root@localhost app]# cat /etc/sysconfig/i18n 

2 LANG="en_US.UTF-8" 3 SYSFONT="latarcyrheb-sun16" 4 [root@localhost app]# 5 [root@localhost app]# source /etc/sysconfig/i18n 6 [root@localhost app]# echo $LANG 7 en_US.UTF-8

提示:linux的客户端也要改成对应的字符集,例如:securecrt

2、mysql的客户端:

临时:

set names utf8

或者:

 登录指定字符集:

mysql -uroot -p --default-character-set=utf8

永久:

更改my.cnf客户端模块的参数,可以实现set names utf8的效果,并且永久生效

[client]

default-character-client=latin1

提示:因为更改的是客户端的一些配置,因此无需重启服务,即可重新登录。相当于set names latin1

3、MySQL数据库的服务端:

更改my.cnf的参数:

1 [mysqld]

2 default-character-set=utf8   #适合5.1以前的版本

3 charcter-set-server = utf8 #适合5.5

4、MySQL数据库中建库建表:

指定对应的字符集即可。

5、开发时,连接使用的字符集,也是使用的是一样的字符集。

 

如何更改线上MySQL数据库的字符集?

对于已有的数据,不能直接通过“alter table character set *”   这个命令都没有修改之前记录的字符集,只是对新创建的数据会有影响!

你可能感兴趣的:(mysql)