SHOW EVENTS
[{FROM | IN} schema_name]
[LIKE 'pattern' | WHERE expr]
此語法顯示關於事件管理員事件的資訊,這些事件在第 27.4 節,「使用事件排程器」中有討論。它需要顯示事件的資料庫的 EVENT
權限。
在其最簡單的形式中,SHOW EVENTS
列出目前綱要中的所有事件。
mysql> SELECT CURRENT_USER(), SCHEMA();
+----------------+----------+
| CURRENT_USER() | SCHEMA() |
+----------------+----------+
| jon@ghidora | myschema |
+----------------+----------+
1 row in set (0.00 sec)
mysql> SHOW EVENTS\G
*************************** 1. row ***************************
Db: myschema
Name: e_daily
Definer: jon@ghidora
Time zone: SYSTEM
Type: RECURRING
Execute at: NULL
Interval value: 1
Interval field: DAY
Starts: 2018-08-08 11:06:34
Ends: NULL
Status: ENABLED
Originator: 1
character_set_client: utf8mb4
collation_connection: utf8mb4_0900_ai_ci
Database Collation: utf8mb4_0900_ai_ci
若要查看特定綱要的事件,請使用 FROM
子句。例如,若要查看 test
綱要的事件,請使用以下語法:
SHOW EVENTS FROM test;
LIKE
子句(如果存在)表示要比對的事件名稱。WHERE
子句可用於使用更一般的條件選擇列,如第 28.8 節,「SHOW 語法的擴充功能」中所討論。
SHOW EVENTS
輸出有以下這些欄位:
Db
事件所屬的綱要(資料庫)名稱。
Name
事件的名稱。
Definer
建立事件的使用者的帳戶,格式為
'
。user_name
'@'host_name
'Time zone
事件時區,即用於排程事件以及在事件執行時生效的時區。預設值為
SYSTEM
。Type
事件重複類型,
ONE TIME
(暫時性)或RECURRING
(重複性)。Execute At
對於一次性事件,這是用於建立事件的
CREATE EVENT
語法,或最後一次修改事件的ALTER EVENT
語法之AT
子句中指定的DATETIME
值。此欄中顯示的值反映了事件AT
子句中包含的任何INTERVAL
值的加法或減法。例如,如果使用ON SCHEDULE AT CURRENT_TIMESTAMP + '1:6' DAY_HOUR
建立事件,且事件建立於 2018-02-09 14:05:30,則此欄中顯示的值為'2018-02-10 20:05:30'
。如果事件的計時由EVERY
子句而不是AT
子句決定(也就是說,如果事件是重複性的),則此欄的值為NULL
。Interval Value
對於重複性事件,這是事件執行之間要等待的間隔數。對於暫時性事件,此欄的值始終為
NULL
。Interval Field
重複性事件在重複之前等待的間隔所使用的時間單位。對於暫時性事件,此欄的值始終為
NULL
。Starts
重複性事件的開始日期和時間。這會顯示為
DATETIME
值,如果事件沒有定義開始日期和時間,則為NULL
。對於暫時性事件,此欄始終為NULL
。對於其定義包含STARTS
子句的重複性事件,此欄包含對應的DATETIME
值。與Execute At
欄一樣,此值會解析任何使用的運算式。如果沒有影響事件計時的STARTS
子句,則此欄為NULL
。Ends
對於其定義包含
ENDS
子句的重複性事件,此欄包含對應的DATETIME
值。與Execute At
欄一樣,此值會解析任何使用的運算式。如果沒有影響事件計時的ENDS
子句,則此欄為NULL
。Status
事件狀態。其中之一為
ENABLED
、DISABLED
或REPLICA_SIDE_DISABLED
。REPLICA_SIDE_DISABLED
表示事件的建立發生在另一個充當複寫來源的 MySQL 伺服器上,並複寫到目前充當複本的 MySQL 伺服器上,但該事件目前未在複本上執行。如需更多資訊,請參閱第 19.5.1.16 節,「已叫用功能的複寫」。REPLICA_SIDE_DISABLED
取代了SLAVESIDE_DISABLED
,後者現已棄用,並將在未來版本的 MySQL 中移除。Originator
建立事件的 MySQL 伺服器的伺服器 ID;用於複寫。如果該陳述式在來源伺服器上執行,則此值可能會透過
ALTER EVENT
更新為該陳述式發生的伺服器的伺服器 ID。預設值為 0。character_set_client
建立事件時的
character_set_client
系統變數的會期值。collation_connection
建立事件時的
collation_connection
系統變數的會期值。Database Collation
與事件相關聯的資料庫定序。
如需有關 REPLICA_SIDE_DISABLED
和 Originator
欄的更多資訊,請參閱第 19.5.1.16 節,「已叫用功能的複寫」。
SHOW EVENTS
顯示的時間以事件時區為單位,如第 27.4.4 節,「事件中繼資料」中所討論。
事件資訊也可從 INFORMATION_SCHEMA
EVENTS
資料表中取得。請參閱第 28.3.14 節,「INFORMATION_SCHEMA EVENTS 資料表」。
事件動作語法不會顯示在 SHOW EVENTS
的輸出中。請使用 SHOW CREATE EVENT
或 INFORMATION_SCHEMA
EVENTS
資料表。