MySQL 8.3 Release Notes
总是可以通过检查 setup_instruments
表来确定性能模式包括哪些仪器。例如,要查看 InnoDB 存储引擎的文件相关事件是否被instrumented,可以使用以下查询:
mysql> SELECT NAME, ENABLED, TIMED
FROM performance_schema.setup_instruments
WHERE NAME LIKE 'wait/io/file/innodb/%';
+-------------------------------------------------+---------+-------+
| NAME | ENABLED | TIMED |
+-------------------------------------------------+---------+-------+
| wait/io/file/innodb/innodb_tablespace_open_file | YES | YES |
| wait/io/file/innodb/innodb_data_file | YES | YES |
| wait/io/file/innodb/innodb_log_file | YES | YES |
| wait/io/file/innodb/innodb_temp_file | YES | YES |
| wait/io/file/innodb/innodb_arch_file | YES | YES |
| wait/io/file/innodb/innodb_clone_file | YES | YES |
+-------------------------------------------------+---------+-------+
在这里不提供详细的描述,因为有几个原因:
-
被instrumented的是服务器代码。这些代码经常发生变化,从而影响仪器的集合。
-
列出所有仪器是不实际的,因为有数百个仪器。
-
如前所述,可以通过查询
setup_instruments
表来找到这些信息。这些信息总是最新的,适用于您的 MySQL 版本,还包括您可能安装的插件的仪器信息,可以被自动化工具使用。