事件元数据
要获取有关事件的元数据:
- 查询数据库
EVENTS表INFORMATION_SCHEMA。请参见“ INFORMATION_SCHEMA事件表”。 - 使用该
SHOW CREATE EVENT语句。请参见“ SHOW CREATE EVENT语句”。 - 使用该
SHOW EVENTS语句。请参见“ SHOW EVENTS语句”。
事件计划程序时间表示
MySQL中的每个会话都有一个会话时区(STZ)。该会话time_zone值是time_zone在会话开始时从服务器的全局值初始化的,但可以在会话期间更改。
执行CREATE EVENTor或ALTER EVENT语句时当前的会话时区用于解释事件定义中指定的时间。这就是事件时区(ETZ);也就是说,用于事件调度的时区,在事件执行时有效。
为了在数据字典中表示事件信息,将execute_at,starts和ends时间转换为UTC并与事件时区一起存储。这使事件执行可以按定义进行,而不管服务器时区的任何后续更改或夏时制如何影响。该last_executed时间也存储在UTC。
可以通过从INFORMATION_SCHEMA.EVENTS表或中选择来获得事件时间SHOW EVENTS,但是它们以ETZ或STZ值报告。下表概述了事件时间。
| Value | INFORMATION_SCHEMA.EVENTS | SHOW EVENTS |
|---|---|---|
| Execute at | ETZ | ETZ |
| Starts | ETZ | ETZ |
| Ends | ETZ | ETZ |
| Last executed | ETZ | n/a |
| Created | STZ | n/a |
| Last altered | STZ | n/a |
