Windows Mysql 导入utf8mb4编码sql文件出错问题

今天在window上导入一个SQL文件的时候,总是报错,看样子像是乱码,直接导致console终端不断报警并失去响应…

查了很久不知道是什么问题,本身建库的时候已经设置了utf8编码,后来打开sql文件一看,发现这个sql文件用的是utf8mb4的编码,我用的wamp集成环境,数据库版本是5.6.17,是支持这个编码的。

然后重新建库,设置默认编码为utf8mb4, 重新导入数据库,结果还是出错。

经过研究,在windows上需要在my.ini文件配置来支持utf8mb4编码,不用担心utf8mb4是可以兼容utf8编码的。

最终解决方案

  1. 修改mysql的配置文件my.ini,
    分别在 [client],[mysql],[mysqld]三项下面修改默认编码(如果没有该项,加上即可)
character_set_server = utf8mb4
  1. 重启mysql服务,这一步很重要。重启完以后可以在命令行查看现在的编码是否正确。如果编码已经被成功修改过来,重新建库,默认编码utf8mb4, 然后就可以导入数据库了
SHOW VARIABLES LIKE ‘character_set%’;
  1. 但是在不同的数据库版本下,默认字符集的变量名称可能不同,有可能会导致数据库服务无法启动,或者无法进入mysql client 也是命令行,这时可以尝试按照如下来配置:
[client]
default-character-set = utf8mb4

[mysqld]
character-set-client-handshake = FALSE
character-set-server           = utf8mb4
collation-server               = utf8mb4_unicode_ci

[mysql]
default-character-set = utf8mb4

猜你喜欢

转载自blog.csdn.net/u012830619/article/details/77989743
今日推荐