文档首页
MySQL 9.0 参考手册
相关文档 下载本手册
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
手册页 (TGZ) - 258.2Kb
手册页 (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 参考手册  /  MySQL 性能模式  /  性能模式查询

29.5 性能模式查询

预过滤限制收集哪些事件信息,与任何特定用户无关。相比之下,后过滤由各个用户通过使用具有适当的 WHERE 子句的查询来执行,这些子句限制从预过滤后可用的事件中选择哪些事件信息。

第 29.4.3 节,“事件预过滤” 中,一个示例展示了如何对文件仪器进行预过滤。如果事件表包含文件和非文件信息,则后过滤是查看仅针对文件事件的信息的另一种方法。向查询添加 WHERE 子句以适当限制事件选择

mysql> SELECT THREAD_ID, NUMBER_OF_BYTES
       FROM performance_schema.events_waits_history
       WHERE EVENT_NAME LIKE 'wait/io/file/%'
       AND NUMBER_OF_BYTES IS NOT NULL;
+-----------+-----------------+
| THREAD_ID | NUMBER_OF_BYTES |
+-----------+-----------------+
|        11 |              66 |
|        11 |              47 |
|        11 |             139 |
|         5 |              24 |
|         5 |             834 |
+-----------+-----------------+

大多数性能模式表都有索引,这使得优化器可以访问除完整表扫描之外的执行计划。这些索引还提高了相关对象的性能,例如使用这些表的 sys 模式视图。有关更多信息,请参见 第 10.2.4 节,“优化性能模式查询”.