MySQL查询结果下的时间是什么意思?

时间:2012-07-07 11:23:47

标签: mysql time execute

这是机器仅执行查询还是包括时间机器显示查询的时间?

我问这个问题,因为我从我的电脑访问远程MySQL服务器,我收到的结果是~15s内约5000条记录。但我在同一个用户的远程MySQL服务器上做同样的事情,我在~0.02s内收到5000条记录。

为什么两个时间不同?

3 个答案:

答案 0 :(得分:1)

如果您真正想要的是测量服务器执行时间,那么您可能想看一下  SHOW PROFILES

示例:

mysql> set profiling = 1;

mysql> select count(*) from xyz;
+----------+
| count(*) |
+----------+
|    10697 |
+----------+
1 row in set (0.02 sec)

mysql> show profiles;
+----------+------------+--------------------------------+
| Query_ID | Duration   | Query                          |
+----------+------------+--------------------------------+
|        1 | 0.01904200 | select count(*) from xyz       |
+----------+------------+--------------------------------+
1 row in set (0.00 sec)

答案 1 :(得分:1)

需要花费更多时间的原因是

  • 您远程执行查询
  • 您在本地执行查询

当查询通过网络运行时,还需要考虑网络传输时间。您可以查看此信息,以便更好地了解network latency

答案 2 :(得分:0)

这意味着DBMS执行查询所需的时间(根据其查询计划)。