欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Linux下MySQL保存进去数据为乱码的解决办法

程序员文章站 2022-05-20 09:03:03
...

mysql默认的字符编码是latin1,而我用的是utf-8,存入数据库就变成了?????这样的乱码,解决方法: 1、windows下:修改my.ini文件,有

mysql默认的字符编码是latin1,而我用的是utf-8,存入数据库就变成了?????这样的乱码,解决方法:

1、windows下:修改my.ini文件,有两处default-character-set=latin1都改为default-character-set=utf8重启既可。
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文件
connectionTimeout="20000"
disableUploadTimeout="true"
port="8080"
redirectPort="8443"
maxSpareThreads="75"
maxThreads="150"
minSpareThreads="25"
URIEncoding="UTF-8">

配上过滤器就OK。

Linux下MySQL保存进去数据为乱码的解决办法