如何检查mysql查询的性能?

Ana*_*ngh 7 mysql sql database database-design

我一直在学习查询优化,提高查询性能,但总的来说,如果创建查询,我们怎么能这么说,这是否完美。

我知道我们可以看到执行时间低于(0.01 s)。但这一次取决于行数(之一)。我想知道我是否正在执行MySQL查询。完美与否。

我已经了解了子句和命令的性能。但是有什么可以检查查询的性能的东西。这里的性能不是执行时间,它意味着查询是否“确定”,没有数据依赖性。

由于我们无法创建实时数据库中的大量数据。测量应独立于数据。

Aru*_*amy 5

如上所述,正确的查询总是data-dependent。在某种程度上,您可以使用以下方法来检查性能

  1. 您可以用来Explain了解查询执行计划,这可能会帮助您纠正一些问题。有关更多信息:请参阅文档使用 EXPLAIN 优化查询

  2. 您可以使用Query Analyzer。请参阅MySQL 查询分析器


小智 5

可以使用MySQL中的EXPLAIN命令检查查询的一般性能。参见https://dev.mysql.com/doc/refman/5.7/en/using-explain.html

它向您展示了MySQL引擎如何计划执行查询并允许您进行一些基本的检查,即如果引擎将使用键和索引来执行查询,了解MySQL将如何执行联接(即,如果不缺少外键) ) 还有很多。

您可以在此处找到有关如何使用EXPLAIN来优化查询的一些一般性提示(以及一些不错的示例):http : //www.sitepoint.com/using-explain-to-write-better-mysql-queries/