Mysql应用mysql导入导出数据中文乱码解决方法小结

Mysql应用mysql导入导出数据中文乱码解决方法小结,第1张

概述介绍《Mysql应用mysql导入导出数据中文乱码解决方法小结》开发教程,希望对您有用。

《MysqL应用MysqL导入导出数据中文乱码解决方法小结》要点:
本文介绍了MysqL应用MysqL导入导出数据中文乱码解决方法小结,希望对您有用。如果有疑问,可以联系我们。

linux系统中

linux默认的是utf8编码,而windows是gbk编码,所以会出现上面的乱码问题.

解决MysqL导入导出数据乱码问题

首先要做的是要确定你导出数据的编码格式,使用MysqLdump的时候需要加上--default-character-set=utf8,

例如下面的代码:
代码如下:MysqLdump -uroot -p --default-character-set=utf8 dbname tablename > bak.sql


那么导入数据的时候也要使用--default-character-set=utf8:

代码如下:MysqL -uroot -p --default-character-set=utf8 dbname < bak.sql

这样统一编码就解决了MysqL数据迁移中的乱码问题了


我使用windows作为导出数据源,并导入 freebsd环境下的MysqL库

解决方法:

导出数据

一、首先在windows平台下MysqL用作导出数据库源.查看字符编码的系统变量:

代码如下:
MysqL> show variables like ‘%char%';
+――――――――C+―――――――――-+
| Variable_name | Value |
+――――――――C+―――――――――-+
| character_set_clIEnt | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | gbk |
| character_set_system | utf8 |
| character_sets_dir | D:MysqLsharecharsets |

+――――――――C+―――――――――-+


查看character_set_database,这里是latin1,latin1是装不了多字节字符集的

二、在windows下设置系统变量为utf8

代码如下:MysqL>set character_set_database=utf8; ##设置默认的字符集为utf8

三、导出数据

代码如下:MysqL> select * from table into outfile ‘c:table.txt' where +条件

这时导出了我想要的部分数据,并以txt文件存在 table.txt中.

导入数据

在freebsd平台下

一、同样设置字符编码的系统变量

代码如下:
MysqL> show variables like ‘%char%';

+――――――――C+―――――――――-+
| Variable_name | Value |
+――――――――C+―――――――――-+
| character_set_clIEnt | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | gbk |
| character_set_system | utf8 |

+――――――――C+―――――――――-+

MysqL>set character_set_database=utf8; ##设置默认的字符集为utf8


二、转载数据

代码如下: MysqL>load data local infile ‘/home/table.txt' into table `table`;
至此、条件数据完整导入导出,并处理了乱码的情况.
总之,两台MysqL服务器导入导出时,一定要确保两台服务器的character_set_database参数相同,这样才能防止一些 乱码的情况.当然我们还可以使用其他字符集,如gbk来进行调整.视情况 *** 作了


解决方法三

乱码解决方法
导入数据后,在命令行查看发现中文乱码
使用以下命令查看系统字符集

代码如下:show variables like 'char%';

如果不是GBK或UTF8,则停止MysqL服务,然后到安装目录修改my.ini文件,
将文件中下面的变量改成如下,如果没有这个变量则增加这些变量

代码如下:
[MysqL]
default-character-set=gbk

[MysqLd]
character-set-server=utf8


重新启动服务,重新导入数据,如果还乱码,

最后得出经验时只要把导入与导出编码统一一下就没问题了. 总结

以上是内存溢出为你收集整理的Mysql应用mysql导入导出数据中文乱码解决方法小结全部内容,希望文章能够帮你解决Mysql应用mysql导入导出数据中文乱码解决方法小结所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1163191.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存