SQL查询需要三秒钟,而对数据库没有任何更改

问题描述 投票:0回答:1

我被要求诊断为什么查询看起来像这样

SELECT COUNT(*) AS count 
FROM users 
WHERE first_digit BETWEEN 500 AND 1500 
  AND second_digit BETWEEN 5000 AND 45000;

从花费约0.3秒突然执行的时间超过了3秒。该系统是在Ubuntu上运行的MySql。

该表未排序,包含约150万行。添加了复合索引后,我的执行时间又降低到了约0.2秒,但这不能解释根本原因导致执行时间突然成倍增加的原因。

我如何开始调查原因?

mysql sql performance
1个回答
0
投票

由于您的SQL查询未更改,并且我将您的描述解释为数据集未更改/增长-我建议您按顺序查看以下区域:

1)是否已删除索引并再次运行SQL查询?

2)网络。网络中有什么变化吗?较大的数据传输,尤其是到相关数据库服务器的数据传输。

© www.soinside.com 2019 - 2024. All rights reserved.