修复wp_termmeta doesn’t exist

2021年10月18日22:16:08 发表评论 90

不知道什么原因,apache的error_log里面塞满了wp_termmeta doesn't exist的错误,也许是升级LAMP环境的时候,不消息将这个表删除了。

修复的方法是,执行如下SQL语句重新创建这张表:

CREATE TABLE `wp_termmeta` (
  `meta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `term_id` bigint(20) unsigned NOT NULL DEFAULT '0',
  `meta_key` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `meta_value` longtext COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`meta_id`),
  KEY `term_id` (`term_id`),
  KEY `meta_key` (`meta_key`(191))
) ENGINE=InnoDB AUTO_INCREMENT=3255 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

你可以使用Adminer插件,在这个插件中执行以上SQL语句。

WordPress自带的数据库检查工具,可以检查出wp_termmeta表缺失的错误。

没有wp_termmeta这个表,WordPress还是能正常运行,只是log里面一大堆notice,看着很不爽。