我最近注意到我的wp_options号桌似乎有点大.它包含1161行,大小约为2.1mb.

我已经安装了Clean Options个.看起来插件的开发早在2010年就停止了,但它仍然完成了任务.

我现在有一长串潜在的孤立条目.有没有一个简单的方法来对这些进行分类,并找出哪些要删除,哪些要保留?此外,这是否会导致网站出现性能问题?

感谢您的阅读,欢迎您提出任何建议!

Update:Clean Options插件在列表中返回了一些瞬态,这让我发现在wp_options表中有几百个瞬态文件.有一大堆看起来像:

  • _site_transient_browser_5728a0f1503de54634b3716638...
  • _site_transient_timeout_browser_03df11ec4fda7630a5...
  • _transient_feed_83dcaee0f69f63186d51bf9a4...
  • _transient_plugin_slugs
  • _transient_timeout_feed_83dcaee0f69f63186d51bf9a4b...

等等就像我说的,有几百行像这样.扔掉它们安全吗?

谢谢

推荐答案

你可以安全地把它们扔掉.Wordpress和一些插件将根据需要重新创建瞬态.瞬态或多或少是来自复杂查询的存储值.结果被保存为瞬态,这样系统就不必反复执行公共查询,而只需查找瞬态(如果它存在且尚未过期).当然,在进行更改之前要对数据库进行备份,以免出错!

备份完所有内容后,可以运行如下mysql语句:

DELETE FROM `wp_options` WHERE `option_name` LIKE ('%\_transient\_%')

[EDIT:条语句在注释建议后用转义字符修复]

Mysql相关问答推荐

用数字和字母对 VARCHAR 列进行排序

MySQL在定义表的位置后抛出错误

了解 SQL 中的元组语法

进行 MySQL COUNT 查询

在 MySQL 中选择 COUNT of MAX

插入重复键查询以在每一行上进行自定义更新

即使我的约束是正确的,如何解决 errno: 150 “外键约束形成错误”?

如何使用 IF() 条件在 MySQL 中显示真假行

如果在表中多次发现 a 列中的相同值,则排除所有行

如何通过未知列中的唯一值有效地更新 MySQL 行

如何根据特定条件从mysql数据库中选择查询

MySQL查询根据同一表中其他字段的值更新表中的字段

sql sum - 处理连接表中的脏重复项

如何解决“错误:MySQL 意外关闭”?

MYSQL 5.7 中的原生 JSON 支持:MYSQL 中 JSON 数据类型的优缺点是什么?

Laravel mysql迁移错误

如何在 MySQL 数据库中存储表情符号字符

Yii2 如何进行 where AND 或 OR 条件分组?

如何向 MySQL 中的 ENUM 类型列添加更多成员?

MySQL失败:mysql“错误1524(HY000):插件'auth_socket'未加载”