MySQL 8.0 リファレンスマニュアル MySQL NDB Cluster 8.0 を含む
このページは機械翻訳したものです。
EVENTS
テーブルには、セクション25.4「イベントスケジューラの使用」 で説明されているイベントマネージャイベントに関する情報が表示されます。
EVENTS
テーブルには、次のカラムがあります:
EVENT_CATALOG
イベントが属するカタログの名前。 この値は常に def
です。
EVENT_SCHEMA
イベントが属するスキーマ (データベース) の名前。
EVENT_NAME
イベントの名前。
DEFINER
'
形式の、user_name
'@'host_name
'DEFINER
句で指定されたアカウント (多くの場合、イベントを作成したユーザー)。
TIME_ZONE
イベントのタイムゾーン。イベントのスケジュールに使用され、イベントの実行時にイベント内で有効なタイムゾーンです。 デフォルト値は SYSTEM
です。
EVENT_BODY
イベント DO
句のステートメントに使用される言語。 値は常に SQL
です。
EVENT_DEFINITION
イベント DO
句を構成する SQL ステートメントのテキスト。つまり、このイベントによって実行されるステートメント。
EVENT_TYPE
イベントの繰返しタイプ。ONE TIME
(一時) または RECURRING
(繰返し)。
EXECUTE_AT
ワンタイムイベントの場合、これは、イベントの作成に使用される CREATE EVENT
ステートメントの AT
句、またはイベントを変更した最後の ALTER EVENT
ステートメントで指定された DATETIME
値です。 このカラムに表示された値は、イベントの AT
句に含まれた、INTERVAL
値の加算または減算に影響します。 たとえば、イベントが ON SCHEDULE AT CURRENT_TIMESTAMP + '1:6' DAY_HOUR
を使用して作成され、イベントが 2018-02-09 の 14:05:30 に作成された場合、カラムに表示される値は '2018-02-10 20:05:30'
になります。 イベントのタイミングが AT
句ではなく EVERY
句で決定される場合 (つまり、イベントが繰り返しである場合)、このカラムの値は NULL
になります。
INTERVAL_VALUE
繰返しイベントの場合、イベント実行間で待機する間隔の数。 一時イベントの場合、値は常に NULL
です。
INTERVAL_FIELD
繰返しイベントが繰り返される前に待機する間隔に使用される時間単位。 一時イベントの場合、値は常に NULL
です。
SQL_MODE
イベントが作成または変更され、イベントが実行されるときに有効な SQL モード。 指定可能な値については、セクション5.1.11「サーバー SQL モード」を参照してください。
STARTS
繰返しイベントの開始日時。 これは DATETIME
値として表示され、このイベントの開始日付と開始時間が定義されていない場合は NULL
です。 一時的なイベントの場合、このカラムは常に NULL
です。 定義に STARTS
句が含まれる繰返しイベントの場合、このカラムには対応する DATETIME
値が含まれます。 EXECUTE_AT
カラムの場合と同様に、この値は使用されている式を解きます。 イベントのタイミングに影響する STARTS
句がない場合、このカラムは NULL
です
ENDS
定義に ENDS
句が含まれる繰返しイベントの場合、このカラムには対応する DATETIME
値が含まれます。 EXECUTE_AT
カラムの場合と同様に、この値は使用されている式を解きます。 イベントのタイミングに影響する ENDS
句がない場合、このカラムは NULL
です。
STATUS
イベントステータス。 ENABLED
、DISABLED
、SLAVESIDE_DISABLED
のいずれか。 SLAVESIDE_DISABLED
は、イベントの作成が、レプリケーションソースとして機能する別の MySQL サーバーで発生し、レプリカとして機能している現在の MySQL サーバーにレプリケートされたが、そのイベントがレプリカで現在実行されていないことを示します。 詳細は、セクション17.5.1.16「呼び出される機能のレプリケーション」 の情報を参照してください。
ON_COMPLETION
PRESERVE
または NOT PRESERVE
のいずれかの値。
CREATED
イベントが作成された日時。 これは TIMESTAMP
値です。
LAST_ALTERED
イベントが最後に変更された日時。 これは TIMESTAMP
値です。 イベントが作成されてから変更されていない場合、この値は CREATED
の値と同じです。
LAST_EXECUTED
イベントが最後に実行された日時。 これは DATETIME
値です。 イベントが一度も実行されていない場合、このカラムは NULL
です。
LAST_EXECUTED
はイベントが開始した時点を示します。 このため、ENDS
カラムが LAST_EXECUTED
より小さくなることは決してありません。
EVENT_COMMENT
コメントのテキスト (イベントにコメントがある場合)。 そうでない場合、この値は空です。
ORIGINATOR
イベントが作成された MySQL サーバーのサーバー ID。レプリケーションで使用されます。 この値は、レプリケーションソースで実行された場合、ALTER EVENT
によって、そのステートメントが発生したサーバーのサーバー ID に更新されることがあります。 デフォルト値は 0 です。
CHARACTER_SET_CLIENT
イベント作成時の character_set_client
システム変数のセッション値。
COLLATION_CONNECTION
イベント作成時の collation_connection
システム変数のセッション値。
DATABASE_COLLATION
イベントが関連付けられているデータベースの照合。
EVENTS
は非標準の INFORMATION_SCHEMA
テーブルです。
EVENTS
テーブルの時間は、セクション25.4.4「イベントメタデータ」 で説明されているように、イベントタイムゾーン、現行セッションタイムゾーンまたは UTC を使用して表示されます。
SLAVESIDE_DISABLED
および ORIGINATOR
カラムの詳細は、セクション17.5.1.16「呼び出される機能のレプリケーション」 を参照してください。
次に示すように、ユーザー'jon'@'ghidora'
が e_daily
という名前のイベントを作成し、ALTER EVENT
ステートメントを使用して数分後に変更するとします:
DELIMITER | CREATE EVENT e_daily ON SCHEDULE EVERY 1 DAY COMMENT 'Saves total number of sessions then clears the table each day' DO BEGIN INSERT INTO site_activity.totals (time, total) SELECT CURRENT_TIMESTAMP, COUNT(*) FROM site_activity.sessions; DELETE FROM site_activity.sessions; END | DELIMITER ; ALTER EVENT e_daily ENABLE;
(コメントは複数の行にわたって記述できます。)
このユーザーは続いて次の SELECT
ステートメントを実行し、次の出力が表示されます。
mysql>SELECT * FROM INFORMATION_SCHEMA.EVENTS
WHERE EVENT_NAME = 'e_daily'
AND EVENT_SCHEMA = 'myschema'\G
*************************** 1. row *************************** EVENT_CATALOG: def EVENT_SCHEMA: myschema EVENT_NAME: e_daily DEFINER: jon@ghidora TIME_ZONE: SYSTEM EVENT_BODY: SQL EVENT_DEFINITION: BEGIN INSERT INTO site_activity.totals (time, total) SELECT CURRENT_TIMESTAMP, COUNT(*) FROM site_activity.sessions; DELETE FROM site_activity.sessions; END EVENT_TYPE: RECURRING EXECUTE_AT: NULL INTERVAL_VALUE: 1 INTERVAL_FIELD: DAY SQL_MODE: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES, NO_ZERO_IN_DATE,NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION STARTS: 2018-08-08 11:06:34 ENDS: NULL STATUS: ENABLED ON_COMPLETION: NOT PRESERVE CREATED: 2018-08-08 11:06:34 LAST_ALTERED: 2018-08-08 11:06:34 LAST_EXECUTED: 2018-08-08 16:06:34 EVENT_COMMENT: Saves total number of sessions then clears the table each day ORIGINATOR: 1 CHARACTER_SET_CLIENT: utf8mb4 COLLATION_CONNECTION: utf8mb4_0900_ai_ci DATABASE_COLLATION: utf8mb4_0900_ai_ci
イベント情報は、SHOW EVENTS
ステートメントからも入手できます。 セクション13.7.7.18「SHOW EVENTS ステートメント」を参照してください。 次のステートメントは同等です。
SELECT EVENT_SCHEMA, EVENT_NAME, DEFINER, TIME_ZONE, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STARTS, ENDS, STATUS, ORIGINATOR, CHARACTER_SET_CLIENT, COLLATION_CONNECTION, DATABASE_COLLATION FROM INFORMATION_SCHEMA.EVENTS WHERE table_schema = 'db_name
' [AND column_name LIKE 'wild
'] SHOW EVENTS [FROMdb_name
] [LIKE 'wild
']