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
。类型
事件重复类型,可以是
ONE TIME
(瞬时)或RECURRING
(重复)。执行时间
对于一次性事件,这是在创建事件时使用的
DATETIME
值,指定在CREATE EVENT
语句的AT
子句中,或在修改事件的最后一个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
。间隔值
对于重复事件,两次事件执行之间等待的间隔数。对于瞬时事件,此列的值始终为
NULL
。间隔字段
重复事件在重复之前等待的间隔使用的时单位。对于瞬时事件,此列的值始终为
NULL
。开始时间
重复事件的开始日期和时间。显示为
DATETIME
值,如果未为事件定义开始日期和时间,则为NULL
。对于瞬时事件,此列始终为NULL
。对于定义中包含STARTS
子句的重复事件,此列包含相应的DATETIME
值。与Execute At
列一样,此值解析任何使用的表达式。如果不存在影响事件计时的STARTS
子句,则此列为NULL
结束时间
对于定义中包含
ENDS
子句的重复事件,此列包含相应的DATETIME
值。与Execute At
列一样,此值解析任何使用的表达式。如果不存在影响事件计时的ENDS
子句,则此列为NULL
。状态
事件状态。可以是
ENABLED
、DISABLED
或REPLICA_SIDE_DISABLED
。REPLICA_SIDE_DISABLED
表示事件的创建发生在充当复制源的另一台 MySQL 服务器上,并复制到充当副本的当前 MySQL 服务器上,但事件目前未在副本上执行。有关更多信息,请参见 第 19.5.1.16 节,“已调用功能的复制”。REPLICA_SIDE_DISABLED
替换了SLAVESIDE_DISABLED
,后者现在已弃用,将在 MySQL 的未来版本中删除。发起者
创建事件的 MySQL 服务器的服务器 ID;用于复制。如果在源服务器上执行,此值可能会被
ALTER EVENT
更新为该语句发生的服务器的服务器 ID。默认值为 0。character_set_client
创建事件时
character_set_client
系统变量的会话值。collation_connection
创建事件时
collation_connection
系统变量的会话值。数据库排序规则
与事件关联的数据库的排序规则。
有关 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
表。