关于mysql加了limit反而变慢的问题?

甜菜波波 甜菜波波     2023-04-21     114

关键词:

SELECT * FROM pre_forum_post WHERE tid=6584344 AND `inv`=\'0\' AND `uid`=\'6547981\' ORDER BY dateline DESC limit 4

;

上面一条正常执行需要 16-20 秒.

SELECT * FROM pre_forum_postWHERE tid=6584344 AND `inv`=\'0\' AND `uid`=\'6547981\' ORDER BY dateline DESC ;

下面的只需要 0.2 秒左右。请大神帮帮忙.

 

 

 

走的索引不一样,  第一个 key 是 dateline,  第二个是 authorid,  根据业务建议优化一下索引. 

WHERE + ORDER BY的索引优化,形如:
SELECT [column1],[column2],…. FROM [TABLE] WHERE [columnX] = [value] ORDER BY [sort];
建立一个联合索引(columnX,sort)来实现order by 优化。

 

回复 @ffvsnn520 : Extra信息不完整, 看看有没有 filesort.  


mysql对语句优化的时候, 选择了不同的索引,  因为你没有 联合索引,所以 当 where 后面走了索引的时候(比如你说的主键), order by 则不会走索引, 如果你的结果集很大, filesort 也会很漫长...


如果mysql走了 order by 索引,那么where就不会走索引,如果你的sql在查询上需要花大量时间,而结果集filesort排序很快的话,那么没走where索引的查询就会非常慢...


所以建议就是 尽量让 where 和 order by 都走索引... 

 
转自:https://www.oschina.net/question/1269003_153551

 

关于加了hibernate框架的项目启动特别慢的问题

今天突然遇到一个问题,就是加了hibernate 框架的项目在启动的时候,特别慢,竟然达到了4分多钟,查来查去,看到我的bean类里*.hbm.xml,有这样的写法:<?xmlversion="1.0"?><!DOCTYPEhibernate-mappingPUBLIC"-//Hibernate/HibernateMappingDTD... 查看详情

为啥 MySQL 查询在使用 LIMIT 和 Order BY 时会变慢?

】为啥MySQL查询在使用LIMIT和OrderBY时会变慢?【英文标题】:WhytheMySQLqueryslowsdownwhileusingLIMITwithOrderBY?为什么MySQL查询在使用LIMIT和OrderBY时会变慢?【发布时间】:2016-07-2006:22:51【问题描述】:我有一个问题:SELECTabt.duration,a.id,a.a_... 查看详情

关于windows系统不会变慢的设想

...,哪些计划任务以及启动项等等。然后软件安装完成后把关于软件的进程,服务,计划任务等都删掉。然后手动创建一个脚本,用脚本代替软件的启动。比如,如果要启动sqlserver,我们可以写一个脚本,先启动SQLserver服务,等等... 查看详情

mysql抖动-为什么偶现突然变慢的问题?(代码片段)

现象一条SQL语句,正常执行的时候特别快,但是有时变得特别慢,并且这样的场景很难复现,它不只随机,而且支持时间还很短。你的SQL语句为什么变"慢"了当内存数据页跟磁盘数据页内容不一致的时候&... 查看详情

day745.如何应对变慢的redis②-redis核心技术与实战(代码片段)

...对变慢的Redis②Hi,我是阿昌,今天学习记录的是关于如何应对变慢的Redis②的内容。上一篇聊了判断Redis变慢的两种方法,分别是响应延迟和基线性能。除此之外,还分享了从Redis的自身命令操作层面排查和解决问... 查看详情

使用文件排序的 MYSQL 性能变慢

】使用文件排序的MYSQL性能变慢【英文标题】:MYSQLperformanceslowusingfilesort【发布时间】:2012-08-2208:26:57【问题描述】:我有一个简单的mysql查询,但是当我有很多记录(当前为103,0000)时,性能真的很慢,它说它正在使用文件排序... 查看详情

nginx做反向代理后,请求变慢的问题

参考技术A用Ngnix作反向代理后,部分信息如下这种情况下,经过代理的请求会变得很慢,几乎比是没代理前的慢好几倍。将server_name的值从localhost改为127.0.0.1,问题得以解决。 查看详情

mysqlocp888题解063-突然变慢的可能原因

...ringhasnotenabledPerformanceSchemainstruments.1.2、中文翻译MySQL突然变慢或不可用的三个典型原因是什么?A、对于InnoDB表,不执行OPTIMIZETABLE。B、进行了配置更改。C、硬件包括一个单点故障。D、MySQL查询缓存已禁用。E、应用程序执... 查看详情

tensorflow迭代速度变慢的问题

最近用TensorFlow实现遗传算法(GeneticAlgorithms),发现迭代速度越来越慢,用time.time()观察以后,发现每次迭代都要比上一次慢0.5秒左右,但是每次迭代的计算量是差不多的。研究后发现,这是因为每次迭代都在计算图(Graph)里面增加... 查看详情

mysql加了性别变慢

参考技术A你要建立俩个索引,一个连接join索引,,一个是wehere用的复合索引如果你只建立了复合索引的化,join是很可能用不到的。或者用的有问题。 参考技术B1.MySQL查询慢是什么体验?大多数互联网应用场景都是读多写少,业... 查看详情

Full GC后socket连接变慢的原因是啥?

】FullGC后socket连接变慢的原因是啥?【英文标题】:WhatcausedsocketconnectionstobeslowafterFullGC?FullGC后socket连接变慢的原因是什么?【发布时间】:2015-08-0113:21:26【问题描述】:我们有一个客户端服务器应用程序,1个服务器,大约10个... 查看详情

mysql通过“延迟关联”进行limit分页查询优化的一个实例

最近在生产上遇见一个分页查询特别慢的问题,数据量大概有200万的样子,翻到最后一页性能很低,差不多得有4秒的样子才能出来整个页面,需要进行查询优化。 第一步,找到执行慢的sql,如下: SELECT    ... 查看详情

day744.如何应对变慢的redis①-redis核心技术与实战(代码片段)

如何应对变慢的Redis①Hi,我是阿昌,今天学习记录的内容是如何应对变慢的Redis①。在Redis的实际部署应用中,有一个非常严重的问题,那就是Redis突然变慢了。一旦出现这个问题,不仅会直接影响用户的使用... 查看详情

01-日志文件自动增长导致数据库响应变慢的问题

... 二、问题分析1、查看ERRORLOG日志,发现有一个错误是关于数据库的日志文件自增长的,内容如下:Autogrowoffile‘xxxx_log‘indatabase‘xxxxx‘wascancelledbyuserortimedoutafter30124milliseconds.UseALTERDATABASEtosetasmallerFILEGROWTHvalueforthisfileortoexplic... 查看详情

面试官:mysql数据库查询慢,除了索引问题还可能是什么原因?

mysql查询为什么会慢,关于这个问题,在实际开发经常会遇到,而面试中,也是个高频题。遇到这种问题,我们一般也会想到是因为索引。那除开索引之外,还有哪些因素会导致数据库查询变慢呢?有哪些操作,可以提升mysql的... 查看详情

mysql(十一十二)——limit关于dql语句的总结(代码片段)

...第二条开始取三条数据11.5取得薪水最高的前5名11.6分页12.关于DQL语句的总结11.limit11.1limit的作用  MySQL提供了limit,主要用于提取前几条或者中间某几行数据。例如,select*fromtablelimitm,n,其中m是指 查看详情

由于索引导致记录数增加,SQLite 插入速度变慢

...befinetuned可以实现大约50k插入/秒的插入速度。这里有很多关于插入速度慢的问题以及大量的建议和基准。还有claimsthatSQLit 查看详情

与理解相比,Python 3.5 与 3.6 使“地图”变慢的原因

】与理解相比,Python3.5与3.6使“地图”变慢的原因【英文标题】:Python3.5vs.3.6whatmade"map"slowercomparedtocomprehensions【发布时间】:2018-01-1723:48:09【问题描述】:如果有一个用C语言编写的函数/方法来获得额外的性能,我有时... 查看详情