当前位置: 网赚博客 > 网站优化 >mysql的rand函数使得服务器CPU占用率100%

mysql的rand函数使得服务器CPU占用率100%

发布时间:2020-10-18 19:12:30 | 作者: 迪克酥酥 | 分类:网站优化

10月16号早上开始U5副业网的访问变的极其缓慢,服务器CPU也是100%卡的不要不要,从百度后台数据反馈看抓取的时间也是非常长。这速度对于用户体验及SEO是非常不利的,这也是迪克酥酥不能忍受。登陆服务查看进程,发现CPU占用率最高的是mysql,既然是数据库,哪肯定跟数据库查询语句有关,找到问题哪就可以去解决啦。

解决过程:

1、连上服务器查看CPU占用率。

2、当CPU占用率100%的时候,连上数据库执行SHOW FULL PROCESSLIST命令查看正在执行的SQL语句。

3、把执行中的语句单个拿出来测试,发现有个查询语句中有个rand()函数,这个函数在数据量很少的时候没有任何问题,当表数据越来越多的时候,查询数据会变的越来越慢。

错误示例:

SELECT *  FROM cms_content a INNER JOIN cms_contentclass c ON a.`ClassID` = c.`ClassID`  WHERE 1=1   AND a.State=1 ORDER BY RAND() LIMIT  5

4、修改后的语句:

SELECT * FROM cms_content WHERE ContentID IN (SELECT t.ContentID FROM  (SELECT  a.ContentID  FROM  cms_content a  INNER JOIN cms_contentclass c 
        ON a.`ClassID` = c.`ClassID`   WHERE 1 = 1   AND c.State = 1   AND a.State = 1     AND c.ClassID = 18   ORDER BY RAND()   LIMIT 5) AS t)

image.png


来源:(QQ/微信:313919848),转载请保留出处和链接!

本文链接: https://www.uzhan5.com/post/48363

本文标签:

cpu rand MySQL

相关阅读:

找副业手机兼职创业项目就上u5网权重快照

享物说APP下载新老用户领1-3微信红包零钱邀请码:F393721

百度最近调整很多网站排名都出来波动

SEO不会编程,10W+网站链接如何查询收录

U5副业网改版一个月总结

关注迪克酥酥学习网赚技巧

评论区

    本文暂时没有评论,来添加一个吧(●'◡'●)

    欢迎您发表评论:

    免费注册 快速登录 网赚工具
    收藏本站

    网赚交流群

    U5网赚客服 返回顶部

    您好,欢迎进入 U5副业网!请 [登录] [注册]

    博客导航 淘宝大额优惠券 站长圈 站长工具 公告资讯