Quartz的12张数据库表说明、Quartz 数据库表含义解释
参考地址 https://www.e-learn.cn/topic/3471635
一、表信息解析:
1.1.qrtz_blob_triggers : 以Blob 类型存储的触发器。
1.2.qrtz_calendars:存放日历信息, quartz可配置一个日历来指定一个时间范围。
1.3.qrtz_cron_triggers:存放cron类型的触发器。
1.4.qrtz_fired_triggers:存放已触发的触发器。
1.5.qrtz_job_details:存放一个jobDetail信息。
1.6.qrtz_job_listeners:job监听器。
1.7.qrtz_locks: 存储程序的悲观锁的信息(假如使用了悲观锁)。
1.8.qrtz_paused_trigger_graps:存放暂停掉的触发器。
1.9.qrtz_scheduler_state:调度器状态。
1.10.qrtz_simple_triggers:简单触发器的信息。
1.11.qrtz_trigger_listeners:触发器监听器。
1.12.qrtz_triggers:触发器的基本信息。
二、Quartz的触发时间的配置的三种方式:
2.1.cron 方式:采用cronExpression表达式配置时间。
2.2.simple 方式:和JavaTimer差不多,可以指定一个开始时间和结束时间外加一个循环时间。
2.3.calendars 方式:可以和cron配合使用,用cron表达式指定一个触发时间规律,用calendar指定一个范围。
注意:cron方式需要用到的4张数据表:
qrtz_triggers,qrtz_cron_triggers,qrtz_fired_triggers,qrtz_job_details
三、 建表SQL
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
DROP TABLE IF EXISTS `qrtz_blob_triggers`;
CREATE TABLE `qrtz_blob_triggers` (
`SCHED_NAME` varchar(120) NOT NULL COMMENT '计划名',
`TRIGGER_NAME` varchar(200) NOT NULL COMMENT ' 触发器名称',
`TRIGGER_GROUP` varchar(200) NOT NULL COMMENT '触发器组',
`BLOB_DATA` blob NULL,
PRIMARY KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) USING BTREE,
INDEX `SCHED_NAME`(`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) USING BTREE
) ENGINE = InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT = Dynamic COMMENT = '以Blob 类型存储的触发器';
DROP TABLE IF EXISTS `qrtz_calendars`;
CREATE TABLE `qrtz_calendars` (
`SCHED_NAME` varchar(120) NOT NULL COMMENT '计划名称',
`CALENDAR_NAME` varchar(200) NOT NULL ,
`CALENDAR` blob NOT NULL,
PRIMARY KEY (`SCHED_NAME`, `CALENDAR_NAME`) USING BTREE
) ENGINE = InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT = Dynamic COMMENT = '日历信息';
DROP TABLE IF EXISTS `qrtz_cron_triggers`;
CREATE TABLE `qrtz_cron_triggers` (
`SCHED_NAME` varchar(120) NOT NULL COMMENT '计划名称',
`TRIGGER_NAME` varchar(200) NOT NULL COMMENT ' 触发器名称',
`TRIGGER_GROUP` varchar(200) NOT NULL COMMENT '触发器组',
`CRON_EXPRESSION` varchar(120) NOT NULL COMMENT '时间表达式',
`TIME_ZONE_ID` varchar(80) NULL DEFAULT NULL COMMENT '时区ID nvarchar 80',
PRIMARY KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) USING BTREE
) ENGINE = InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT = Dynamic COMMENT = '定时触发器';
DROP TABLE IF EXISTS `qrtz_fired_triggers`;
CREATE TABLE `qrtz_fired_triggers` (
`SCHED_NAME` varchar(120) NOT NULL COMMENT '计划名称',
`ENTRY_ID` varchar(95) NOT NULL COMMENT '组标识',
`TRIGGER_NAME` varchar(200) NOT NULL COMMENT '触发器名称',
`TRIGGER_GROUP` varchar(200) NOT NULL COMMENT '触发器组',
`INSTANCE_NAME` varchar(200) NOT NULL COMMENT '当前实例的名称',
`FIRED_TIME` bigint(13) NOT NULL COMMENT '当前执行时间',
`SCHED_TIME` bigint(13) NOT NULL COMMENT ' 计划时间',
`PRIORITY` int(11)