数据库迁移 UnKnown collation与 UnKnown character set 问题的解决

今日在给一个网站做迁移,康复数据库的时分弹出了“UnKnown collation: ‘utf8mb4_unicode_520ci’ ”的过错提示,详细报错信息如下:

网上搜了一下,原来是 MySQL 5.6 以及以上版别下,设备 WordPress 4.6 及以上版别的时分,默许的编码整理方式为 utf8mb4_unicode_520_ci,可是 MySQL 5.5 及以下版别的数据库,不支撑 utf8mb4_unicode_520_ci,所以无法导入。 而咱们只需求将备份的 sql 文件经过记事本翻开,交流 utf8mb4_unicode_520_ci 为utf8mb4_unicode_ci 即可。

交流完成后从头导入,又提示“UnKnown character set: ‘utf8mb4‘ ”过错。纳尼?什么状况!!!

遽然想起来,这事儿不对啊!WordPress 数据库不是 utf 8 编码的吗?咋成了 utf8mb4 编码了?这什么灵异事情。。。回去查看了下 wp-config.php 文件,果不其然,编码格式不知何时改成 utf8mb4 ,这就为难了不是。问题是因为运用的是阿里云的虚拟主机,最高只支撑 mysql 5.1.73 ,退钱是不可能了。只能强即将编码改为 utf8 了。

再次翻开记事本,批量查找 utf8mb4 并将其交流回 utf8 。

从头测验回复数据库,成功!!!

注:手动批改数据文件有危险,重要数据不建议此种操作。幸而新站数据量不大,康复后大致查看了下没什么问题。提示大家也看下自己 wp-config.php 文件中数据库编码格式,当然,假设你今后不会再运用低版别数据库倒也无妨。