wordpress网站转移服务器空间,通过phpmyadmin导入sql数据时出现错误,错误提示:
MySQL返回: #1273 – Unknown collation:’utf8mb4_unicode_ci’
大致意思是“没有定义的编码集utf8mb4”。搜索查询后发现utf8mb4是utf8的一个衍生形式,utf-8里的一个字符只能最多支持3个字节,而utf8mb4则扩展到一个字符支持4个字节。而utf8mb4只有在mysql数据库版本是5.5.3+的时候才支持,网站原mysql的版本是5.6,导入的mysql版本是5.0,因此出现#1273错误。
wordpress官方的相关说明是只要在数据库支持utf8mb4的时候会把部分数据表的编码升级为utf8mb4,如果不支持就不会转化为utf8mb4编码(wordpress 4.4版本支持mysql 5.0+)。
解决方法:
方法一:替换编码
使用代码编辑器(记事本,Editplus等都可以)打开导出的sql数据文件;
先查找:
utf8mb4_unicode_ci(这个决定于上面的错误代码,即我蓝色标识的那一行单引号里面)
替换为:
utf8_general_ci
再查找
utf8mb4
替换为
utf8
注意:一定要按照上面的顺序进行替换,否则不能替换成功。
针对第一步,如果你上面的错误编码是什么就把什么替换掉,不一定是utf8mb4_unicode_ci,有可能是utf8_unicode_520_ci,反正都要换成utf8_general_ci
PS:言曌博客通过该方法导入成功,暂时没有发现有问题,但还是要先备份好数据再进行操作。
方法二:把网站要用的mysql数据库升级到5.5.3以上版本。