MySQL 8.0 リファレンスマニュアル


27.4.10 インストゥルメントされているものの特定

パフォーマンススキーマにどのインストゥルメントが含まれているかを特定するには、常に setup_instruments テーブルをチェックすることで可能です。 たとえば、InnoDB ストレージエンジンに、どのファイル関連イベントがインストゥルメントされているかを確認するには、次のクエリーを使用します。

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   |
+-------------------------------------------------+---------+-------+

このドキュメントでは、いくつかの理由で、正確に何がインストゥルメントされるかについて詳細に説明していません。

  • 何がインストゥルメントされるかは、サーバーコードです。 このコードへの変更は頻繁に行われ、インストゥルメントのセットにも影響します。

  • すべてのインストゥルメントは数百もあるため、それらを挙げることは現実的ではありません。

  • 先述のように、setup_instruments テーブルをクエリーすることによって見つけることができます。 この情報は使用している MySQL のバージョンに常に最新であり、コアサーバーに含まれておらず、自動化されたツールで使用可能な、インストールしている可能性があるインストゥルメント済みのプラグインのインストゥルメンテーションも含みます。


関連キーワード:  テーブル, パフォーマンス, スキーマ, file, インストゥルメント, events, replication, setup, history, 変数