新部署网站项目,浏览器中文输入,网页显示???乱码

在Linux CentOS7上部署新网站时,遇到浏览器中文输入显示为乱码的问题。经过排查,发现是MySQL数据库的编码格式为latin1导致的,而非Tomcat或代码编码问题。解决方法是将MySQL数据库的编码方式改为utf8,通过修改配置文件永久设置字符集,重启数据库后问题得到解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

新开发一个网站,最近再Linux centos7上进行了部署,但是发现,浏览器中中文输入,网页显示的是问好乱码,通过一个周末的连续调试和查找网上资料,问题终于找到,并解决。现将问题情况分析,及解决方法进行分享,希望能对同样遇到问题的人有用。
在这里插入图片描述

一、原因分析。
网上查询很多资料,大多数人分享经验把问题,归结到tomcat上,这也是我花了那么多时间。
还有部分人,分享是原代码编码有问题。或者是网页前端编码问题。
以上可能有人是这种情况,但是,我遇到的是数据编码格式不正确。
二、主要问题。
新发布项目,特别是新购买服务器,要想运行网站,目前大多数都需要新安装数据库。由于我购买的阿里云2核1G 服务器,所以我安装的是mysql 5.5,高版本一是不够稳定,二是太大,占资源太多。
新安装的数据库,默认编码是latin1,这种编码方式不稳定,对中文不兼容,(也有特例,当都是latin1编码,中文也识别),所以我们要把数据编码方式改为utf8。
三调试方法
1.查看当前sql系统变量,查看系统字符集,执行如下sql

show variables like ‘%character%’;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值