WordPress导入数据库报错Database: `数据库名`表的结构 `wp_commentmeta`
今天给WordPress网站搬家,发现导入数据库的时候报错,具体错误如下:
错误
SQL 查询:
--
-- Database: `数据库名`
--
-- --------------------------------------------------------
--
-- 表的结构 `wp_commentmeta`
--
CREATE TABLE IF NOT EXISTS `wp_commentmeta` (
`meta_id` bigint(20) unsigned NOT NULL,
`comment_id` bigint(20) unsigned NOT NULL DEFAULT '0',
`meta_key` varchar(255) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL,
`meta_value` longtext COLLATE utf8mb4_unicode_520_ci
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci
MySQL 返回:
#1273 - Unknown collation: 'utf8mb4_unicode_520_ci'
大概如下图所示:
之所以报错的原因是因为数据库版本差异,导致wordpress数据库的编码整理方式不一样。MySQL 5.6 以及以上版本下,安装 WordPress 4.6 及以上版本的时候,默认的编码整理方式为 utf8mb4_unicode_520_ci,但是 MySQL 5.5 及以下版本的数据库,不支持 utf8mb4_unicode_520_ci,所以无法导入。
解决方案:
使用 sublime text 等代码编辑器,打开需要导入的数据库文件,然后批量查找替换所有的
utf8mb4_unicode_520_ci 为 utf8mb4_unicode_ci
保存后再导入即可。
评论