81

如何测量查询的执行时间而不测量它等待锁定释放等的时间?我唯一的想法是不断测量相同的查询并记录最快的时间。

4

2 回答 2

154

启动分析器

SET profiling = 1;

然后执行您的查询。

SHOW PROFILES;

您会看到探查器具有统计信息的查询列表。最后,您选择要检查的查询

SHOW PROFILE FOR QUERY 1;

或您查询的任何数字。

你得到的是一个列表,其中确切地在查询期间花费了多少时间。

手册中的更多信息

于 2012-06-30T15:00:07.313 回答
39

接受的答案变得无效......

SHOW PROFILE[S]自 MySQL 5.6.7 起已弃用,并将在未来的 MySQL 版本中删除。改用性能模式;见http://dev.mysql.com/doc/refman/5.6/en/performance-schema-query-profiling.html

于 2015-09-18T03:26:24.490 回答