mysql - mysql中多个查询的总运行时间

标签 mysql sql database query-optimization

我在 .sql 文件中有一些基准查询。如果我使用 mysql 中的源代码来执行它们,mysql 将在每个查询后显示运行时间。并且有页面和页面查询输出。有什么方法可以获得所有查询的总运行时间?

非常感谢!

最佳答案

您可以通过将此行添加到 my.cnf 来使用 MySQL 的内置分析支持:

SET profiling=1;

这使您可以轻松查看每个查询所花费的时间:

mysql> SHOW PROFILES;
+----------+-------------+-------------------------------------------------------------------+
| Query_ID | Duration    | Query                                                             |
+----------+-------------+-------------------------------------------------------------------+
|        1 |  0.33174700 | SELECT COUNT(*) FROM myTable WHERE extra LIKE '%zkddj%'           | 
|        2 |  0.00036600 | SELECT COUNT(id) FROM myTable                                     | 
|        3 |  0.00087700 | CREATE TEMPORARY TABLE foo LIKE myTable                           | 
|        4 | 33.52952000 | INSERT INTO foo SELECT * FROM myTable                             | 
|        5 |  0.06431200 | DROP TEMPORARY TABLE foo                                          | 
+----------+-------------+-------------------------------------------------------------------+
5 rows in set (0.00 sec)

您可以将这些时间相加得到总时间:

SELECT SUM(Duration) from information_schema.profiling;

您可以找到有关 MySQL 分析的更多详细信息 here .

另一种方法是从命令行运行 SQL 查询并使用 Unix time 命令来计时执行。然而,这可能无法为您提供最精确的时间。此外,它不会为您提供每个查询花费多长时间的详细信息,除非您将其与 MySQL 分析结合使用。

关于mysql - mysql中多个查询的总运行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13504666/

相关文章:

database - 基于 CouchDB 的多用户应用程序的最佳实践?

c# - 需要数据库结构的建议(MS SQL/MySQL)

php - PHP 和 MySQL 中的日期和时间函数

sql - 使用正则表达式 Access UPDATE 查询

php - 修复将数据库导入 Wampserver 的 1064 SQL 错误

php - Mysql自动更新事件

mysql - 使用电子邮件更新 SQL 数据库

php - 具有多个 ands 和 ors 的 Mysql 查询

php - 从 SQL 查询创建 XML 文件

sql - 无法确定元数据,因为语句“插入到