> 데이터 베이스 > MySQL 튜토리얼 > 网上一次MySQL中文乱码问题的处理过程_MySQL

网上一次MySQL中文乱码问题的处理过程_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-01 13:30:42
원래의
947명이 탐색했습니다.

bitsCN.com

网上一次MySQL中文乱码问题的处理过程
 

1 企鹅上朋友问我MySQL查询出来的数据在工具里面出来的是乱码,如图所示:网上一次MySQL中文乱码问题的处理过程_MySQL

 

2 让他去检查mysql服务器的字符集设置,可以看到都是utf8正常的,如图所示:

网上一次MySQL中文乱码问题的处理过程_MySQL

 

3 我猜测一定是数据录入的时候出的问题,朋友说是通过source方式录入的,然后我去linux服务器上面检查导入的数据文件:

more /opt/soft/20130821ajtdrz_1.sql: 如图所示:

网上一次MySQL中文乱码问题的处理过程_MySQL

 

4 然后我让他把文件下载从服务器下载下来在本地看看,他下载下来之后,显示如图正常:

网上一次MySQL中文乱码问题的处理过程_MySQL

 

5,奇怪了,而且 而且网站前台显示也是好的,不过这个情况也不是不能解释,原来做短信系统有过类似的经历,就是录入的和网页前台显示的编码如果是一致的话,不管你中间存储的是什么类型,那么即使通过别的工具看到的是乱码,但是网页前台一定显示是正常的。我让他看下他的editplus下面sql文件编码格式是否是utf8格式的,如图所示:

网上一次MySQL中文乱码问题的处理过程_MySQL

 

看到这里他保存的编码格式也是utf-8的啊,怎么会传入到linux下变成乱码了呢?

 

6, 我去看linux下面的语言格式

[root@AY13080711045157190fZ soft]# echo $LANG
en_US.UTF-8

看到这里我推断出2个原因

1 不是zh_US.UTF-8模式的。难道是中文安装失败导致传到linux上面的sql文件是乱码的形式的吗?

2 要不就是传过来的sql文件保存格式有问题。(但是朋友说了保存格式正确,这点也许概率不大)

 

7, 我上网google了很多资料,发现如果是en_US.UTF-8语言模式下,是可以正常显示汉字的只要,传上来的sql文件的编码模式是linux模式的utf8编码就行了,到此我可以判定很大概率是朋友上传得sql文件有问题的。我让他方便的话把文件发给我,我在这边检测下他的sql文件。结果这兄弟,没有回复了,估计是有要事走开了。

 

8,1个半小时后,这兄弟回来了,跟我说:“不好意思啊。这么晚回你 。刚开回去了,问题解决了, 是我文件编码问题。我另存为下utf8 完了再传上去就好使 了。”,就发图给我如下:

 

网上一次MySQL中文乱码问题的处理过程_MySQL

总结如下:中文显示乱码,大概有这么几个方面

1 服务器端字符串设置,一般统一为utf-8

2 client端字符串设置,看是否为utf8

3 上传的数据的编码模式,一定要选与服务器端的编码模式一致。

bitsCN.com
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿