首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查询速度慢会导致服务器挂起

查询速度慢会导致服务器挂起
EN

Stack Overflow用户
提问于 2018-10-04 16:39:05
回答 1查看 372关注 0票数 1

我得到了我的网站和服务器的家伙告诉它的问题,因为MySQL慢查询。我的网站是Wordpress CMS。下面是一个查询,它会产生问题。我不确定这个查询是什么时候运行的。我的数据库中有多个70000+用户。

代码语言:javascript
复制
# Query_time: 1078.445935  Lock_time: 0.000236 Rows_sent: 59  Rows_examined: 379721873
SET timestamp=1538539120;
SELECT DISTINCT wp_users.ID FROM wp_users LEFT JOIN wp_usermeta ON ( wp_users.ID = wp_usermeta.user_id )  LEFT JOIN wp_usermeta AS mt1 ON ( wp_users.ID = mt1.user_id )  LEFT JOIN wp_usermeta AS mt2 ON ( wp_users.ID = mt2.user_id )  LEFT JOIN wp_usermeta AS mt3 ON (wp_users.ID = mt3.user_id AND mt3.meta_key = 'wpseo_noindex_author' ) WHERE 1=1 AND wp_users.ID IN ( SELECT DISTINCT wp_posts.post_author FROM wp_posts WHERE wp_posts.post_status = 'publish' AND wp_posts.post_type IN ( 'post', 'page', 'attachment', 'static-block' ) ) AND ( 
  wp_usermeta.meta_key = '_yoast_wpseo_profile_updated' 
  AND 
  ( 
    ( mt1.meta_key = 'wp_user_level' AND mt1.meta_value != '0' ) 
    AND 
    ( 
      ( mt2.meta_key = 'wpseo_noindex_author' AND mt2.meta_value != 'on' ) 
      OR 
      mt3.user_id IS NULL
    )
  )
) ORDER BY wp_usermeta.meta_value+0 

DESC;
EN

回答 1

Stack Overflow用户

发布于 2018-10-11 21:53:27

Yoast SQL插件发出https://wordpress.org/plugins/wordpress-seo/查询。它不是为如此多的用户设计的,SQL查询也不会期望如此。

当然,最干净的解决方案就是不在这样的网站上使用这个插件。

在情况危急的情况下,你不能关闭它-当然,有一些黑客可能会解决这个问题,或者修改代码。

它是从get_users方法的class-author-sitemap-provider.php文件中调用的。现在,它会遍历你所有的帖子,然后查询曾经发帖的用户。您可以尝试在false中设置$defaults['has_published_posts'] = true;,以便至少从查询中排除posts表。删除meta_query参数将使查询更加简单。但所有这些都是肮脏的黑客行为,这当然会影响功能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52642482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档