由于SQL_CALC_FOUND_ROWS计数后导致加载的查询?

时间:2012-01-23 作者:vkGunasekaran

我发现这个查询在服务器上造成了一些负载,我的主机管理员让我查看它。

SELECT SQL_CALC_FOUND_ROWS  wp_posts 
我认为这会选择wp\\U posts表中的行数。。但我尝试在单独的页面中进行此查询,完成请求需要很长时间。有人能帮我克服这个问题吗?

谢谢

1 个回复
SO网友:Rarst

WordPress使用MySQL的这一功能,当您仅检索有限数量的帖子时,就可以获得帖子总数(总共100篇帖子,但每页只有10篇帖子)。

快速查看来源no_found_rows 可以禁用它的查询参数。这将破坏分页,并且只能用于不需要计数的特定查询(例如get_posts() 默认情况下使用)。

您可能需要全面检查数据库的性能(如果您运行的是非常大的数据库),或者是否存在配置问题(如果您运行的是足够小的数据库,不可能导致资源问题)。

结束

相关推荐

$wpdb->flush();中断循环

我正在使用$wpdb->flush(); 在我的页面底部,试图防止由于缓存而多次执行查询,但它似乎不是刷新最近的查询,而是刷新整个缓存,因为我的页面没有加载过去生成的内容。可能相关信息:我正在使用exec-php 插件,因此此页面完全是php,我还有另一个可能相关的问题as detailed here