15

我有返回数千个结果的查询,是否可以在 MySQL 控制台或命令行中仅显示查询时间而没有实际结果?

4

2 回答 2

7

SET profiling = 1;在命令提示符下使用。

更多详情请参阅

在没有得到结果或没有执行 sql 的情况下,不可能得到执行时间。

看看为什么我们不能在没有实际查询执行的情况下获得执行时间

于 2012-05-29T11:15:30.710 回答
4

如果您使用的是 Linux。

  1. 创建文件query.sql
  2. 输入要测试的查询。例如select * from table1
  3. 运行此命令:

time mysql your_db_name -u'db_user_name' -p'your_password' < query.sql > /dev/null

输出将如下所示:

real    0m4.383s    
user    0m0.022s    
sys     0m0.004s

“真正的”线是你正在看的。在上面的示例中,查询耗时 4.38 秒。

显然,在命令行上输入您的数据库密码并不是一个好主意,但可以作为一种快速而肮脏的解决方法。

于 2018-10-27T09:21:00.787 回答