MySQL数据库中的中文乱码如何解决?
1、修改安装文件根目录下的my.ini文件:搜索字段default-character-set,设置其值为utf8/gbk之一(注意设置utf8的时候不能设成utf-8)再去重启MySQL服务器如果还是出现乱码,接着执行下面操作2、修改数据库编码在安装目录的data目录下找到你出现乱码的数据库对应的文件夹(这个文件夹即是你这个数据库存放数据的地方),进入找到db.opt文件(即此数据库的编码配置文件),修改值为下面的default-character-set=gbkdefault-collation=gbk_chinese_ci再去重启MySQL服务器如果还是出现乱码,接着执行下面操作3、再不行,备份原数据库数据,直接drop掉这个数据库重新创建数据库并设置编码createdatabaseyourDBcharactersetgbk;别忘了重启MySQL服务器综上:如果还没有解决,我也没辙了。重装吧,重装的时候设置下编码三处的编码要一致
mysql中的复制乱码怎么解决?或者告诉我如何进行文件对比?
主要是字符集不一致造成,可尝试以下方法:
1、导入前先运行下面的语句:set names gbk;
2、运行后再运行:status;会发现客户端和连接的编码都变成了gbk;
3、文本保存不要保存为utf8格式的,用默认的,是latin;而后再倒入:source x:/xx.sql;
4、导入成功后,再查询某个表,就变成中文了。
MySql编码改过之后为什么查询数据还是乱码?
你说的应该是中文显示乱码吧,这个主要原因应该是mysql数据库的编码方式和系统自身的编码方式冲突造成的,如果数据库的编码是utf-8,而系统自身的编码是gbk,那查询的时候中文很可能就会显示乱码,下面我大概介绍一下查看编码和设置编码的步骤,实验环境win7+mysql5.5+navicat,主要步骤如下:
1.先在navicat中查看要查询的数据,如下,数据显示正常,中文未出现乱码:
2.打开cmd,连接mysql,输入同样的sql语句,这次中文出现乱码,查询结果不能正常显示,如图:
3.查看当前数据库编码方式,语句是"show variables like '%character%'",从中可以看出,数据采用的编码方式是utf-8,而我们知道,cmd默认采用的编码方式是gbk,所以出现中文乱码,不能正常显示中文:
4.发现问题所在后,在输入sql语句前,可以进行一下编码设置,设置成与cmd默认编码方式一样,就不会出现中文乱码现象,命令是"set names gbk",如下:至此,中文就能正常显示了,之所以中文显示乱码,归根结底还是编码方式冲突造成的,cmd中经常会出现这种情况,你设置一下编码就行,linux系统采用的是utf-8编码,出现中文乱码的情况较少,除非你设置数据库的编码方式不是utf-8。这里需要注意的是在你创建数据库的时候,就要注意编码的设置,有些时候数据库默认编码不是utf-8,而你又不指定,很可能就会出现乱码,而这种情况下,一般不仔细检查还发现不了,这时候你就得好好看编码了,希望以上分享的内容能对你有所帮助吧。