Advertisement

MySQL为何会发现使用LIMIT进行分页查询变慢

阅读量:

小李刚刚加入了一家全新的企业。他的第一个任务就是从订单数据库中提取所需数据并导出至文件。小李心想:这简直太容易了。于是很快他编写了以下代码,并告知测试团队该方案无需额外测试即可上线。

语句如下:

复制代码
 select * from orders where name=‘lilei’ and create_time>'2020-01-01 00:00:00' limit start,end

    
  
    
 复制代码

没有想到在上线后的某个时候(这段时间),系统出现了生产预警信息,并触发了监控报警机制;随后发现这一条查询语句被标记为慢SQL(慢查询),其耗时约半分钟以上;这对业务运营造成了显著的影响。

急切地咨询了这位技术专家(猿猿)关于问题的原因后

一、测试实验

mysql分页直接用limit start, count分页语句:

复制代码
 select * from product limit start, count

    
  
    
 复制代码

当初始分页较小时,在性能上没有问题;我们逐一考察了从1, 1, 和其他较大的初始分页开始的情况。

复制代码
 select * from product limit 10, 20 0.016秒

    
 select * from product limit 100

全部评论 (0)

还没有任何评论哟~