このページは機械翻訳したものです。
setup_objects テーブルは、パフォーマンススキーマが特定のオブジェクトをモニターするかどうかを制御します。 このテーブルはデフォルトで 100 行の最大サイズになります。 テーブルサイズを変更するには、サーバー起動時にperformance_schema_setup_objects_size システム変数を変更します。
初期setup_objects の内容は次のように見えます。
mysql> SELECT * FROM performance_schema.setup_objects;+-------------+--------------------+-------------+---------+-------+| OBJECT_TYPE | OBJECT_SCHEMA | OBJECT_NAME | ENABLED | TIMED |+-------------+--------------------+-------------+---------+-------+| EVENT | mysql | % | NO | NO || EVENT | performance_schema | % | NO | NO || EVENT | information_schema | % | NO | NO || EVENT | % | % | YES | YES || FUNCTION | mysql | % | NO | NO || FUNCTION | performance_schema | % | NO | NO || FUNCTION | information_schema | % | NO | NO || FUNCTION | % | % | YES | YES || PROCEDURE | mysql | % | NO | NO || PROCEDURE | performance_schema | % | NO | NO || PROCEDURE | information_schema | % | NO | NO || PROCEDURE | % | % | YES | YES || TABLE | mysql | % | NO | NO || TABLE | performance_schema | % | NO | NO || TABLE | information_schema | % | NO | NO || TABLE | % | % | YES | YES || TRIGGER | mysql | % | NO | NO || TRIGGER | performance_schema | % | NO | NO || TRIGGER | information_schema | % | NO | NO || TRIGGER | % | % | YES | YES |+-------------+--------------------+-------------+---------+-------+setup_objects テーブルへの変更はただちにオブジェクトモニタリングに影響します。
setup_objects に示されているオブジェクトの種類では、パフォーマンススキーマはそれらのモニター方法にテーブルを使用します。 オブジェクトの一致はOBJECT_SCHEMA およびOBJECT_NAME カラムに基づきます。 一致のないオブジェクトはモニターされません。
デフォルトのオブジェクト構成の効果は、mysql、INFORMATION_SCHEMA、およびperformance_schema データベースのテーブルを除くすべてのテーブルをインストゥルメントすることです。 (INFORMATION_SCHEMA データベース内のテーブルは、setup_objects の内容に関係なくインストゥルメントされず、information_schema.% の行は単にこのデフォルトを明示します。)
パフォーマンススキーマは、setup_objects の一致をチェックする場合、まずより詳細な一致を見つけようとします。 たとえば、テーブルdb1.t1 では、'db1' と't1'、次に'db1' と'%'、次に'%' と'%' の一致を検索します。 さまざまな一致するsetup_objects 行はさまざまなENABLED 値とTIMED 値を持つ可能性があるため、一致が発生する順序が重要です。
テーブルへのINSERT またはDELETE 権限を持つユーザーが、setup_objects に行を挿入したり、削除したりできます。 既存の行では、テーブルへのUPDATE 権限を持つユーザーによって、ENABLED およびTIMED カラムのみを変更できます。
イベントフィルタリングにおけるsetup_objects テーブルの役割の詳細については、セクション27.4.3「イベントの事前フィルタリング」を参照してください。
setup_objects テーブルにはこれらのカラムがあります。
OBJECT_TYPEインストゥルメントするオブジェクトの種類。 値は、
'EVENT'(イベントスケジューライベント)、'FUNCTION'(ストアドファンクション)、'PROCEDURE'(ストアドプロシージャ)、'TABLE'(実テーブル) または'TRIGGER'(トリガー) のいずれかです。TABLEフィルタリングはテーブル I/O イベント (wait/io/table/sql/handlerインストゥルメント) およびテーブルロックイベント (wait/lock/table/sql/handlerインストゥルメント) に影響します。OBJECT_SCHEMAオブジェクトを格納するスキーマ。 これはリテラル名、または「任意のスキーマ」を意味する
'%'であるべきです。OBJECT_NAMEインストゥルメントされたオブジェクトの名前。 これはリテラル名、または「任意のオブジェクト」を意味する
'%'であるべきです。ENABLEDオブジェクトのイベントがインストゥルメントされるかどうか。 値は
YESまたはNOです。 このカラムは変更できます。TIMEDオブジェクトのイベントの時間が測定されるかどうか。 このカラムは変更できます。
setup_objects テーブルには次のインデックスがあります:
(
OBJECT_TYPE,OBJECT_SCHEMA,OBJECT_NAME) のインデックス
TRUNCATE TABLE はsetup_objects テーブルに対して許可されています。 行が削除されます。