有没有办法告诉MySQL查询运行多长时间?

时间:2011-05-18 16:09:17

标签: mysql

除了运行完成之外......

您是否可以监控某些进度,以查看正在处理查询时正在执行的操作,这些操作可以让您了解需要多长时间,或者至少执行哪一步,哪些步骤有发生了,还剩下什么?

如果是,这个相同的工具会帮助您确定查询中花费时间最长的部分吗?

我正试图更好地理解是什么让某些查询比其他查询花费的时间更长。

2 个答案:

答案 0 :(得分:1)

这称为性能分析:http://dev.mysql.com/tech-resources/articles/using-new-query-profiler.html

MySQL内置了一个内置功能。 :)

答案 1 :(得分:1)

你可以使用explain让MySQL向你展示函数为什么需要多长时间。

http://dev.mysql.com/doc/refman/5.0/en/explain.html

这个想法是它会向你显示它使用的索引等等,这将帮助你优化查询或表格以使其更快。

这不是你问题的直接答案,因为它不会告诉你查询的实时进度,这是你要求的,但它直接回答你问题的最后一句话,所以对于你真正想知道的事情,它实际上可能比任何实时进度报告更有用。