mysql默认的字符编码是latin1,而我用的是utf-8,存入数据库就变成了?????这样的乱码,解决方法:
1、windows下:修改my.ini文件,有两处default-character-set=latin1都改为default-character-set=utf8重启既可。
http://blog.sina.com.cn/s/blog_647325a90100q2m7.html
2、linux下:vi /etc/my.cnf(# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf 既已经把my-medium.cnf拷贝到/etc/下了)在[mysqld]下加入default-character-set = utf8,[client]下加入default-character-set = utf8
:wq保存退出
也可直接在mysql>输入
mysql> SET character_set_client = x;
mysql> SET character_set_results = x;
mysql> SET character_set_connection = x;
x为要设置的字符集,如utf8
# show variables like '%char%';# show variables like '%collation_%';
查看字符集,会显示各项字符集。重新设置后的数据库不能使用,因为中文一样会是乱码,不知道为什么,重建一个数据库,重启服务器。
url中文字符乱码问题:
修改tomcat的server.xml文件
<Connector acceptCount="100"
connectionTimeout="20000"
disableUploadTimeout="true"
port="8080"
redirectPort="8443"
maxSpareThreads="75"
maxThreads="150"
minSpareThreads="25"
URIEncoding="UTF-8">
</Connector>
配上过滤器就OK。
----------------------------------------------
------------------------------------
SecureCRT连接Linux显示Mysql记录中文乱码【转】
一 查看Linux主机系统字符集 echo $LANG
en_US.UTF-8
二 ssh客户端character encoding默认设置为default,只要改成指定UTF-8即可在终端上显示中文。
SecureCRT设置:(在打开会话以后可以直接设置会话选顶)选项(Options)->会话选项(Session Options)->外观(Appearance)->字符(character encoding),选择UTF-8 默认字体Normal font可选一个中文字体 新宋体 10PT。
三 备注1 查看mysql的字符集设置
查看mysql server字符集系统变量:
mysql>show variables like 'character_%';
mysql>show variables like 'collation%';
最终客户端连接的字符集是由:
备注2 客户端连接时可以指定字符集
mysql --default-character-set=utf8
备注3 在配置文件指定字符集 更改配置文件后需重启服务才会生效
[client]
set character_set_results=utf8
[mysql]
set character_set_results=utf8
----------------------------------------------------
show variables like '%char%';
show variables like '%collation_%';
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;
-uwebgame -pwebgame --default-character-set=utf8 -hx.x.x.x
set names utf8;
1、windows下:修改my.ini文件,有两处default-character-set=latin1都改为default-character-set=utf8重启既可。
http://blog.sina.com.cn/s/blog_647325a90100q2m7.html
2、linux下:vi /etc/my.cnf(# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf 既已经把my-medium.cnf拷贝到/etc/下了)在[mysqld]下加入default-character-set = utf8,[client]下加入default-character-set = utf8
:wq保存退出
也可直接在mysql>输入
mysql> SET character_set_client = x;
mysql> SET character_set_results = x;
mysql> SET character_set_connection = x;
x为要设置的字符集,如utf8
# show variables like '%char%';# show variables like '%collation_%';
查看字符集,会显示各项字符集。重新设置后的数据库不能使用,因为中文一样会是乱码,不知道为什么,重建一个数据库,重启服务器。
url中文字符乱码问题:
修改tomcat的server.xml文件
<Connector acceptCount="100"
connectionTimeout="20000"
disableUploadTimeout="true"
port="8080"
redirectPort="8443"
maxSpareThreads="75"
maxThreads="150"
minSpareThreads="25"
URIEncoding="UTF-8">
</Connector>
配上过滤器就OK。
----------------------------------------------
------------------------------------
SecureCRT连接Linux显示Mysql记录中文乱码【转】
一 查看Linux主机系统字符集 echo $LANG
en_US.UTF-8
二 ssh客户端character encoding默认设置为default,只要改成指定UTF-8即可在终端上显示中文。
SecureCRT设置:(在打开会话以后可以直接设置会话选顶)选项(Options)->会话选项(Session Options)->外观(Appearance)->字符(character encoding),选择UTF-8 默认字体Normal font可选一个中文字体 新宋体 10PT。
三 备注1 查看mysql的字符集设置
查看mysql server字符集系统变量:
mysql>show variables like 'character_%';
mysql>show variables like 'collation%';
最终客户端连接的字符集是由:
备注2 客户端连接时可以指定字符集
mysql --default-character-set=utf8
备注3 在配置文件指定字符集 更改配置文件后需重启服务才会生效
[client]
set character_set_results=utf8
[mysql]
set character_set_results=utf8
----------------------------------------------------
show variables like '%char%';
show variables like '%collation_%';
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;
-uwebgame -pwebgame --default-character-set=utf8 -hx.x.x.x
set names utf8;