要获取有关事件的元数据:
查询数据库的
event表mysql。查询数据库的
EVENTS表INFORMATION_SCHEMA。请参阅 第 24.3.8 节,“INFORMATION_SCHEMA EVENTS 表”。使用
SHOW CREATE EVENT语句。请参阅第 13.7.5.7 节,“SHOW CREATE EVENT 语句”。
事件调度程序时间表示
MySQL 中的每个会话都有一个会话时区 (STZ)。这是在会话开始时time_zone从服务器的全局
time_zone值初始化的会话值,但在会话期间可能会更改。
CREATE EVENTor
语句执行
时的当前会话时区
ALTER EVENT用于解释事件定义中指定的时间。这成为事件时区 (ETZ);即,用于事件调度并在事件执行时在事件中生效的时区。
为了在
mysql.event表中表示事件信息,将
execute_at、starts和
ends时间转换为 UTC 并与事件时区一起存储。这使事件执行能够按照定义继续进行,而不管服务器时区或夏令时的任何后续更改。last_executed时间也以 UTC 格式存储
。
如果您从 中选择信息mysql.event,那么刚才提到的时间将作为 UTC 值检索。这些时间也可以通过从
INFORMATION_SCHEMA.EVENTS表中或从中选择来获得SHOW EVENTS,但它们被报告为 ETZ 值。这些来源提供的其他时间表示事件创建或最后更改的时间;这些显示为 STZ 值。下表总结了事件时间的表示。
| 价值 | mysql.event |
INFORMATION_SCHEMA.EVENTS |
SHOW EVENTS |
|---|---|---|---|
| 执行于 | 世界标准时间 | ETZ | ETZ |
| 开始 | 世界标准时间 | ETZ | ETZ |
| 结束 | 世界标准时间 | ETZ | ETZ |
| 最后执行 | 世界标准时间 | ETZ | 不适用 |
| 已创建 | STZ | STZ | 不适用 |
| 最后修改 | STZ | STZ | 不适用 |