mysql导入乱码问题解决办法

互联网十八般武艺 互联网十八般武艺

很多朋友可能会碰到在利用命令或phpmyadmin导入数据时出现中文乱码问题了,下面我来给大家介绍解决导入乱码的方法,有需要的朋友可参考.

要想导入时避免不出现乱码,只要保证数据文件的编码和导入时甚至的编码一直即可,注意,不是和数据库的编码一致,例如,数据文件data.sql,编码为UTF-8,使用如下命令:

mysql -uroot -p --default-character-set=utf8 db < data.sql

上面的办法不一定有效果,因为不知道mysql编码,我们可以先查看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|utf8|
  8. |character_set_filesystem|binary|
  9. |character_set_results|latin1|
  10. |character_set_server|utf8|
  11. |character_set_system|utf8|
  12. |character_sets_dir|/usr/local/Percona-Server-5.1.57-rel12.8-233--x86_64/share//charsets/|
  13. +--------------------------+---------------------------------------------------------------------------------+
  14. 8rowsinset(0.01sec)
  15. mysql>showvariableslike"%coll%";
  16. +----------------------+-------------------+
  17. |Variable_name|Value|
  18. +----------------------+-------------------+
  19. --phpfensi.com
  20. |collation_connection|latin1_swedish_ci|
  21. |collation_database|utf8_bin|
  22. |collation_server|utf8_bin|
  23. +----------------------+-------------------+

修改sql文件,代码如下:

  1. SETcollation_connection=utf8_bin;
  2. SETcharacter_set_client=utf8;
  3. SETcharacter_set_connection=utf8;

再执行导入,代码如下:

mysql --socket=/opt/mydata/my3306/my3306.sock -A < xxx.sql 就好了...

还发现一个程序导入乱码解决办法,就是在mysql_connect后面加一句SET NAMES UTF8,即可使得UTF8的数据库消除乱码,对于GBK的数据库则使用SET NAMES GBK,代码如下:

$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);

mysql_query("SET NAMES 'GBK'");

数据库字符集为utf-8,连接语句用这个,代码如下:

  1. mysql_query("SETNAMES'UTF8'");
  2. mysql_query("SETCHARACTERSETUTF8");
  3. mysql_query("SETCHARACTER_SET_RESULTS=UTF8'");
  4. --phpfensi.com

相关广告
  • mysql导入乱码问题解决办法 mysql导入乱码问题解决办法 mysql导入乱码问题解决办法
相关阅读

mysql导入乱码问题解决办法

2019/10/10 17:34:36 | 谷歌SEO算法 | SEO