SHOW EVENTS
[{FROM | IN} schema_name]
[LIKE 'pattern' | WHERE expr]此語法會顯示關於事件管理員事件的資訊,這些事件在第 27.5 節,"使用事件排程器"中討論。它需要顯示事件的資料庫的 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語句之AT子句中指定的DATETIME值,或是上次修改事件的ALTER EVENT語句中的值。此欄中顯示的值會反映事件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.5.4 節「事件中繼資料」中所述。
事件資訊也可從 INFORMATION_SCHEMA EVENTS 表格中取得。請參閱第 28.3.14 節「INFORMATION_SCHEMA EVENTS 表格」。
事件動作語句不會顯示在 SHOW EVENTS 的輸出中。請使用 SHOW CREATE EVENT 或 INFORMATION_SCHEMA EVENTS 表格。