我的同事今天问了我一个问题
“我有一个包含4个选择查询的SQL脚本。我每天使用它已超过一个月,但昨天同样的查询需要2个小时,我不得不中止执行。”
他的问题是
我对Q2的回答是使用SQL分析器并检查Sql语句事件的跟踪。
对于Q1:我向他提出几个问题
你还认为我还应该考虑什么?可以有任何其他原因吗?
由于我没有看到查询所以我无法将其粘贴到此处。
要看的东西(SQL Server):
update statistics
。在这种情况下,我的方法是:
SELECT NOW()
添加查询,以便您可以测量每个查询所花费的时间。您也可以让MySQL为您做算术,将NOW()存储到会话变量中,然后使用TIMEDIFF()计算语句的开始和结束之间的差异。
SELECT NOW() INTO @start;
SELECT SLEEP(5); -- or whatever query you need to measure
SELECT TIMEDIFF(@start, NOW());