centos终端中文乱码_Mac数据库乱码问题

这篇博客讲述了作者在使用CentOS系统、IntelliJ IDEA、MySQL和Sequel Pro时遇到的数据库中文乱码问题。经过排查,发现是Sequel Pro创建表时可能忽略默认编码,以及服务器字符集配置不正确导致的。通过修改my.cnf配置文件,将服务器字符集更改为utf-8,最终解决了问题。
摘要由CSDN通过智能技术生成

最近在学习JavaWeb,写了一个后台管理系统,但出现了服务器向数据库存入数据中文乱码的情况,下面分享一下本人的解决方案,希望对大家能有帮助。

使用的ide是intelliJ IDEA,数据库为mysql,图形化数据库管理工具是Sequel Pro(免费的,亲测很好用),服务器是Tomcat。

最开始在做CRUD的时候,先在数据库中存好数据,然后通过服务器访问没有出现任何问题,如下

73f491b9156df3e215bad1ed561de881.png

但做到通过由服务器向数据库添加数据是出现了中文变成问号的问题

1f64f997259475d2c53958034cdae680.png

c2f1a44a280e6b32fd9e2c148e591b74.png

本以为是哪里的编码没有改,但找遍了一切设置编码的地方都是utf-8,request和response jsp页面都有声明,IDEA本身编码也是u8,最后把问题确定在数据库身上,发现sequel pro在创建表可能会忽略掉默认编码,可以在这里重新修改

4c0aefa3aacb695e2d1166cf9daf6cd4.png

但是!

在修改完成后丫的问号问题还是没有解决,所有能改的地方都改成了u8中文依旧会显示问号,整个人都不好了。。。

最后的最后,通过各种百度,把问题确定在了这里,选中的一栏默认值是Iatin 1,在看名字server,服务器,问题就在这里

9a75ba4cdbf5edbf616fe02d7c2e7b90.png

接下来开始解决

  1. 先在设置里停掉mysql,这里需要输入密码

5ebb13bfe00da4a7eb3aabecd89b94d2.png

2.在mysql的安装路径下找到叫support-files的文件夹,里面有一个叫my-XX.cnf的文件,将它复制粘贴到etc文件夹下,重命名为my.cnf并用终端打开(拖进去)。

0ac1508d98bba2df338d9876ac9351ca.png

3.然后看一下他的读写权限,在访达中右键文件->显示简介->最下边共享与权限,将第一个和第二个改为读和写

0442711639d136b7651b2c130d3f4bb3.png

4.然后开始配置文件内容,在终端中路径前面加上vi,如下

69be12502d7be879ddb39f02581ced4d.png

回车开始修改配置文件,在文件最上边加入

[client]
default-character-set=utf8

在在[mysqld]下增加

character-set-server=utf8 

93b9819aa16dc1c8bfaa70c91493f818.png

d24560e0a9298b6fab7912281e48df8b.png

添加完成后按下esc然后直接输入:wq保存并退出vi编辑(有冒号)回车回到这个界面

65906adc36c52eef71162d28eea2ac36.png

就大功告成了。

设置中重启mysql,再回去查看server的字符集就是像上边发的那样的utf-8,数据库和服务器展示的中文也可以正常显示了。


软件工程大二在读,自学的JavaWeb,视频资料是传智播客的,很详细,在b站就可以找得到,也是前不久刚刚入手的mac pro16寸,还没有完全用明白...这个回答也是在网上找了好多资料整合成的,希望能帮到有问题的人(本人萌新,大佬勿喷...)

如果帮到你了记得回来点个赞呀~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值