mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据

2020年2月6日06:17:20 发表评论 29

mysql order by查询慢,索引也不行或不生效优化解决办法40万条数据测试如下

mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据

测试用了40万+条数据,MySQL数据表字段为48个,数据量还是蛮庞大的,面对这样的数据,如果没有做MySQL索引,简直可以直接关机了,因为根本无法访问。

但是,等好不容易做了索引,却发现MySQL执行仍然很慢,额,打个比喻,跟蜗牛差不多吧,总之让人蛋疼。

我用了一个晚上来研究,用了N多种办法,最后找到了可取的一种,那就是优化索引顺序,指定索引。

好吧,废话不多说了,直接上图、上代码、见证奇迹……

 

SELECT bookid,bookname,bookinfo,author,click,vip,bao,jian,piao,shang,ping,zan,cai,cang,size,isfull,sort,sortname,type,typename,sexid,tag,qudao,pic,newtime FROM ysslms_slms_book_list WHERE sort=9 AND type=1 AND vip=0 AND newtime >= UNIX_TIMESTAMP('2020-02-03 05:43:46') AND isfull=2 AND size <= 300000 order by size desc LIMIT 0,30000
//优化前使用的MySQL语句

效果如下:让人蛋疼,3万条数据,居然要用11秒,真让人受不了,当然,让人受不了的还在下面,继续看……》

mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据
mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据

有没有被这惊人的速度吓坏呢?我自己都被下了一条,哎,好吧,说正题,开始见证奇迹,继续优化……

SELECT bookid,bookname,bookinfo,author,click,vip,bao,jian,piao,shang,ping,zan,cai,cang,size,isfull,sort,sortname,type,typename,sexid,tag,qudao,pic,newtime FROM ysslms_slms_book_list FORCE INDEX(size) WHERE sort=9 AND type=1 AND vip=0 AND newtime >= UNIX_TIMESTAMP('2020-02-03 05:43:46') AND isfull=2 AND size <= 300000 order by size desc LIMIT 0,30
//优化后的代码,没什么特别的,就是加了 FORCE INDEX(size)

mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据

mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据

mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据

嘿嘿!是不是很羡慕?别急,慢慢来,这就带客官去找“《葵花宝典》”,哈哈,偏题了,精彩继续……

首先,我们需要自定义一个索引,按顺序来,就像我这样-》,不废话,上图就完了

mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据

mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据

mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据

是不是有所领悟?嗯,没错,就是这样,顺序按照我们要查询的MySQL顺序来,从左到右。

当然,我也试过没按顺序的,结果嘛!你懂的,蜗牛它兄弟。

至此,我们的测试优化已结束,谢谢大家观看

附对比图一张

mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据

文图来自https://www.slms.cc/原创,转发请备注,谢谢配合,祝您工作愉快!

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: