如何在没有MySQL结果的情况下测试查询的速度

时间:2012-05-29 11:09:07

标签: mysql performance load-time

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

2 个答案:

答案 0 :(得分:7)

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

Refer for more details

如果没有得到结果或执行sql,就无法获得执行时间。

See why we can not get execution time without actual query execution

答案 1 :(得分:2)

如果您使用的是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秒。

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