我可以删除WordPress安装的wp_options表中的瞬态吗?

Rya*_*yan 57 mysql database wordpress wordpress-plugin

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

我已经安装了Clean Options.看起来2010年开发时插件停止了,但它仍然可以完成这项工作.

我现在有一长串潜在的孤立条目.是否有一种简单的方法可以对这些进行分类,并确定要删除哪些以及要保留哪些内容?此外,这是否可能导致网站出现性能问题?

感谢您的阅读,欢迎任何想法!

更新:清除选项插件在列表中返回了一些瞬态,这使我发现表中有几百个瞬态文件wp_options.有一大堆看起来像:

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

等等.就像我说的,有几百行看起来像这样.转储它们是否安全?

谢谢

Lan*_*ane 135

你可以安全地转储它们.Wordpress和一些插件将根据需要重新创建瞬变.瞬态或多或少是复杂查询的存储值.结果将保存为瞬态,以便系统不必反复执行常见查询,而只是查找瞬态(如果存在且尚未过期).当然,在进行更改之前,请备份数据库,以免出现问题!

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

DELETE FROM `wp_options` WHERE `option_name` LIKE ('%\_transient\_%')
Run Code Online (Sandbox Code Playgroud)

[ 编辑:声明用转义字符修复,评论建议后]

  • ` '%\ _瞬时\ _%'`.不要忘记`_`是单字符[通配符](http://dev.mysql.com/doc/refman/5.0/en/string-comparison-functions.html). (19认同)
  • 如果可以的话,我会把这个答案三倍投票 - 谢谢! (3认同)
  • 应该使用 $wpdb->prefix 而不是 wp_ 以便它可以在任何 wordpress db.. 甚至 $wpdb->options 上工作并替换整个内容 (2认同)