重Wordpress MySQL查询,请帮我找到并优化它

时间:2010-06-04 09:27:45

标签: php mysql wordpress

我有一个wordpress网站启动并运行相当受欢迎,但在过去几天我的表现已经非常糟糕。

我已经安装了Jet Profiler,并且一直在监视MySQL数据库,看看我是否能找到错误的内容,而且这个查询一直是最糟糕的攻击者。

SELECT SQL_CALC_FOUND_ROWS  wp_posts.* FROM wp_posts  WHERE 1=1  AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish')  ORDER BY wp_posts.ID ASC LIMIT 0, 1

我的第一个猜测是删除SQL_CALC_FOUND_ROWS函数并将*更改为仅特定字段,但我找不到调用此查询的内容。

我如何找出哪个php文件正在调用它?

3 个答案:

答案 0 :(得分:1)

很有可能是你的头版。我假设您已经使用WP Super Cache或其他内容(nginxSquid等)在WordPress前安装了缓存。如果没有,你不应该看数据库。 Caching is critical for WP

答案 1 :(得分:1)

您可能需要查看其跟踪器上发布的这两个问题:

http://core.trac.wordpress.org/ticket/10469

http://core.trac.wordpress.org/ticket/12557

(更新:添加了链接)

答案 2 :(得分:0)

最终解决方案是一个名为TDO Mini Forms的插件编码错误并破坏了我的数据库。

因此,如果您遇到此问题并插入该插件,我强烈建议您将其删除。它似乎不再作为插件数据库中的有效选项存在