文档首页
MySQL 9.0 参考手册
相关文档 下载本手册
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
手册页 (TGZ) - 258.2Kb
手册页 (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 参考手册  /  ...  /  SHOW EVENTS 语句

15.7.7.19 SHOW EVENTS 语句

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

  • 状态

    事件状态。可以是 ENABLEDDISABLEDREPLICA_SIDE_DISABLEDREPLICA_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_DISABLEDOriginator 列的更多信息,请参见 第 19.5.1.16 节,“已调用功能的复制”

SHOW EVENTS 显示的时间以事件时区表示,如 第 27.5.4 节,“事件元数据” 中所述。

事件信息也可以从 INFORMATION_SCHEMAEVENTS 表中获取。请参见 第 28.3.14 节,“INFORMATION_SCHEMA EVENTS 表”

事件操作语句未在 SHOW EVENTS 的输出中显示。使用 SHOW CREATE EVENTINFORMATION_SCHEMAEVENTS 表。