北京SEO

mysql导入导出数据中文乱码解决方法总结

2019/10/10/17:33:51  阅读:1864  来源:谷歌SEO算法  标签: SEO工具

本文章总结了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用作导出数据库源,查看字符编码的系统变量,代码如下 :

  1. mysql>showvariableslike‘%char%’;
  2. +————————–+—————————-+
  3. |Variable_name|Value|
  4. +————————–+—————————-+
  5. |character_set_client|latin1|
  6. |character_set_connection|latin1|
  7. |character_set_database|latin1|
  8. |character_set_filesystem|binary|
  9. |character_set_results|latin1|
  10. |character_set_server|gbk|
  11. |character_set_system|utf8|
  12. |character_sets_dir|D:mysqlsharecharsets|
  13. +————————–+—————————-+

查看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平台下.

一、同样设置字符编码的系统变量,代码如下:

  1. mysql>showvariableslike‘%char%’;
  2. +————————–+—————————-+
  3. |Variable_name|Value|
  4. +————————–+—————————-+
  5. |character_set_client|latin1|
  6. |character_set_connection|latin1|
  7. |character_set_database|latin1|
  8. |character_set_filesystem|binary|
  9. |character_set_results|latin1|
  10. |character_set_server|gbk|
  11. |character_set_system|utf8|
  12. |
  13. +————————–+—————————-+
  14. mysql>setcharacter_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文件,将文件中下面的变量改成如下,如果没有这个变量则增加这些变量,代码如下:

  1. [mysql]
  2. default-character-set=gbk
  3. --phpfensi.com
  4. [mysqld]
  5. character-set-server=utf8

重新启动服务,重新导入数据,如果还乱码,最后得出经验时只要把导入与导出编码统一一下就没问题了.

广告内容

mysql导入导出数据中文乱码解决方法总结 mysql导入导出数据中文乱码解决方法总结 mysql导入导出数据中文乱码解决方法总结

相关阅读

热门评论

爱互踩 爱互踩

爱互踩流量交换~

总篇数175

精选文章

RMAN中catalog和nocatalog区别介绍 小技巧:为Linux下的文件分配多个权限 zimbra8.5.1安装第三方签名ssl证书的步骤 解决mysql不能远程连接数据库方法 windows服务器mysql增量备份批处理数据库 mysql中slow query log慢日志查询分析 JavaScript跨域问题总结 Linux下负载均衡软件LVS配置(VS/DR)教程 mysql中权限参数说明 MYSQL(错误1053)无法正常启动

SEO最新算法