0
点赞
收藏
分享

微信扫一扫

MySQL教程119-MySQL查看事件

小猪肥 2022-07-27 阅读 65

创建好事件后,用户可以通过以下 3 种方式来查看事件的状态信息:

  1. 查看 mysql.event
  2. 查看 information_schema.events
  3. 切换到相应的数据库后执行 SHOW EVENTS;

以上方式的运行结果基本一致,这里就不一一演示了。下面查看 information_schema.events 表中的事件状态信息。SQL 语句和运行结果如下:

mysql> SELECT * FROM information_schema.events limit 1\G
*************************** 1. row ***************************
EVENT_CATALOG: def
EVENT_SCHEMA: test
EVENT_NAME: e_test
DEFINER: root@localhost
TIME_ZONE: SYSTEM
EVENT_BODY: SQL
EVENT_DEFINITION: INSERT INTO tb_eventtest(user,createtime)VALUES('MySQL',NOW())
EVENT_TYPE: RECURRING
EXECUTE_AT: NULL
INTERVAL_VALUE: 5
INTERVAL_FIELD: SECOND
SQL_MODE: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
STARTS: 2020-05-21 10:41:39
ENDS: NULL
STATUS: ENABLED
ON_COMPLETION: PRESERVE
CREATED: 2020-05-21 10:41:39
LAST_ALTERED: 2020-05-21 10:41:39
LAST_EXECUTED: 2020-05-21 12:38:54
EVENT_COMMENT:
ORIGINATOR: 1
CHARACTER_SET_CLIENT: gbk
COLLATION_CONNECTION: gbk_chinese_ci
DATABASE_COLLATION: utf8_unicode_ci
1 row in set (0.08

以上参数说明如下表所示:

参数名

说明

EVENT_CATALOG

事件存放目录,一般情况下,值为 def,不建议修改

EVENT_SCHEMA

事件所在的数据库

EVENT_NAME

事件名称

DEFINER

事件的定义者

TIME_ZONE

事件使用的时区,默认是 SYSTEM,不建议修改

EVENT_BODY

一般情况下,值为 SQL,不建议修改

EVENT_DEFINITION

该事件的内容,可以是具体的 INSERT 等 SQL,也可以是一个调用的存储过程

EVENT_TYPE

事件类型,这个参数比较重要,在定义时指定

有两个值:RECURRING 和 ONE TIME

RECURRING 表示只要符合条件就会重复执行,RECURRING 类型的事件一般为 NULL,表示该事件的预计执行时间

ONE TIME 只会调用 EXECUTE_AT,针对 one-time 类型的事件有效

INTERVAL_VALUE

针对 RECURRING 类型的事件有效,表示执行间隔长度

INTERVAL_FIELD

针对 RECURRING 类型的事件有效,表示执行间隔的单位,一般是 SECOND,DAY 等值,可参考创建语法

SQL_MODE

当前事件采用的 SQL_MODE

STARTS

针对 RECURRING 类型的事件有效,表示一个事件从哪个时间点开始执行,和 one-time 的 EXECUTE_AT 功能类似。

为 NULL 时表示一符合条件就开始执行

ENDS

针对 RECURRING 类型的事件有效,表示一个事件到了哪个时间点后不再执行,如果为 NULL 就是永不停止

STATUS

一般有三个值,ENABLED、DISABLED 和 SLAVESIDE_DISABLED

ON_COMPLETION

只有两个值,PRESERVE 和 NOT PRESERVE

CREATED

事件的创建时间

LAST_ALTERED

事件最近一次被修改的时间

LAST_EXECUTED

事件最近一次执行的时间,如果为 NULL 表示从未执行过

EVENT_COMMENT

事件的注释信息

ORIGINATOR

当前事件创建时的 server-id,用于主从上的处理,比如 SLAVESIDE_DISABLED

CHARACTER_SET_CLIENT

事件创建时的客户端字符集

COLLATION_CONNECTION

事件创建时的连接字符校验规则

DATABASE_COLLATION

事件创建时的数据库字符集校验规则



举报

相关推荐

0 条评论