我有返回数千个结果的查询,是否可以在MySQL控制台或命令行中仅显示没有实际结果的查询时间?
答案 0 :(得分:7)
在命令提示符处使用SET profiling = 1;
。
如果没有得到结果或执行sql,就无法获得执行时间。
See why we can not get execution time without actual query execution
答案 1 :(得分:2)
如果您使用的是Linux。
select * from table1
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秒。
很明显,在命令行中输入数据库密码并不是一个好主意,但可以作为一种快速而肮脏的解决方法。