• 爱情文章
  • 亲情文章
  • 友情文章
  • 生活随笔
  • 校园文章
  • 经典文章
  • 人生哲理
  • 励志文章
  • 搞笑文章
  • 心情日记
  • 英语文章
  • 范文大全
  • 作文大全
  • 新闻阅读
  • 当前位置: 山茶花美文网 > 励志文章 > 正文

    【MySQL导入导出数据出现乱码的解决办法】 sas导入csv文件乱码解决办法

    时间:2020-05-29来源:山茶花美文网 本文已影响 山茶花美文网手机站

    在mysql导入导出数据时经常出现中文乱码的问题,大多是因类导入导出时编码设置不一致所引起的。本文介绍了不同平台下的编码转换方法,供大家参考。

    在linux系统中默认的是utf8编码,而windows是gbk编码,如果在这二个系统间导入未经指定编码的数据,就会出现乱码。

    首先,确定导出数据的编码格式,使用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%";

    +————————–+—————————-+

    | Variable_name | Value |

    +————————–+—————————-+

    | 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 |

    +————————–+—————————-+

    查看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%";

    +————————–+—————————-+

    | Variable_name | Value |

    +————————–+—————————-+

    | 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 |

    +————————–+—————————-+

    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导入导出数据出现乱码的解决办法】 sas导入csv文件乱码解决办法 相关文章:
    • 爱情文章
    • 亲情文章
    • 友情文章
    • 随笔
    • 哲理
    • 励志
    • 范文大全