@@ -0,0 +1,142 @@ | |||
# | |||
# Thanks to Srinivas Venkatarangaiah for submitting this file's contents | |||
# | |||
# In your Quartz properties file, you'll need to set | |||
# org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.CloudscapeDelegate | |||
# | |||
# Known to work with Cloudscape 3.6.4 (should work with others) | |||
# | |||
create table qrtz_job_details ( | |||
sched_name varchar(120) not null, | |||
job_name varchar(200) not null, | |||
job_group varchar(200) not null, | |||
description varchar(250) , | |||
job_class_name varchar(250) not null, | |||
is_durable varchar(5) not null, | |||
is_nonconcurrent varchar(5) not null, | |||
is_update_data varchar(5) not null, | |||
requests_recovery varchar(5) not null, | |||
job_data long varbinary, | |||
primary key (sched_name,job_name,job_group) | |||
); | |||
create table qrtz_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
job_name varchar(200) not null, | |||
job_group varchar(200) not null, | |||
description varchar(250) , | |||
next_fire_time longint, | |||
prev_fire_time longint, | |||
priority integer, | |||
trigger_state varchar(16) not null, | |||
trigger_type varchar(8) not null, | |||
start_time longint not null, | |||
end_time longint, | |||
calendar_name varchar(200), | |||
misfire_instr smallint, | |||
job_data long varbinary, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,job_name,job_group) references qrtz_job_details(sched_name,job_name,job_group) | |||
); | |||
create table qrtz_simple_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
repeat_count longint not null, | |||
repeat_interval longint not null, | |||
times_triggered longint not null, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_cron_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
cron_expression varchar(120) not null, | |||
time_zone_id varchar(80), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
sched_name varchar(120) not null, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INT NULL, | |||
INT_PROP_2 INT NULL, | |||
LONG_PROP_1 longint NULL, | |||
LONG_PROP_2 longint NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 varchar(5) NULL, | |||
BOOL_PROP_2 varchar(5) NULL, | |||
PRIMARY KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(sched_name,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
create table qrtz_blob_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
blob_data long varbinary , | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_calendars( | |||
sched_name varchar(120) not null, | |||
calendar_name varchar(200) not null, | |||
calendar long varbinary not null, | |||
primary key (sched_name,calendar_name) | |||
); | |||
create table qrtz_paused_trigger_grps | |||
( | |||
sched_name varchar(120) not null, | |||
trigger_group varchar(200) not null, | |||
primary key (sched_name,trigger_group) | |||
); | |||
create table qrtz_fired_triggers( | |||
sched_name varchar(120) not null, | |||
entry_id varchar(95) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
instance_name varchar(200) not null, | |||
fired_time longint not null, | |||
sched_time longint not null, | |||
priority integer not null, | |||
state varchar(16) not null, | |||
job_name varchar(200) null, | |||
job_group varchar(200) null, | |||
is_nonconcurrent varchar(5) null, | |||
requests_recovery varchar(5) null, | |||
primary key (sched_name,entry_id) | |||
); | |||
create table qrtz_scheduler_state | |||
( | |||
sched_name varchar(120) not null, | |||
instance_name varchar(200) not null, | |||
last_checkin_time longint not null, | |||
checkin_interval longint not null, | |||
primary key (sched_name,instance_name) | |||
); | |||
create table qrtz_locks | |||
( | |||
sched_name varchar(120) not null, | |||
lock_name varchar(40) not null, | |||
primary key (sched_name,lock_name) | |||
); |
@@ -0,0 +1,188 @@ | |||
-- Thanks to Timothy Anyona for this script | |||
-- CUBRID 8.4.1+ | |||
-- In your Quartz properties file, you'll need to set | |||
-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.CUBRIDDelegate | |||
DROP TABLE IF EXISTS QRTZ_FIRED_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_PAUSED_TRIGGER_GRPS; | |||
DROP TABLE IF EXISTS QRTZ_SCHEDULER_STATE; | |||
DROP TABLE IF EXISTS QRTZ_LOCKS; | |||
DROP TABLE IF EXISTS QRTZ_SIMPLE_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_SIMPROP_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_CRON_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_BLOB_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_JOB_DETAILS; | |||
DROP TABLE IF EXISTS QRTZ_CALENDARS; | |||
CREATE TABLE QRTZ_JOB_DETAILS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
JOB_CLASS_NAME VARCHAR(250) NOT NULL, | |||
IS_DURABLE BIT(1) NOT NULL, | |||
IS_NONCONCURRENT BIT(1) NOT NULL, | |||
IS_UPDATE_DATA BIT(1) NOT NULL, | |||
REQUESTS_RECOVERY BIT(1) NOT NULL, | |||
JOB_DATA BLOB NULL, | |||
PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE QRTZ_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
NEXT_FIRE_TIME BIGINT NULL, | |||
PREV_FIRE_TIME BIGINT NULL, | |||
PRIORITY INTEGER NULL, | |||
TRIGGER_STATE VARCHAR(16) NOT NULL, | |||
TRIGGER_TYPE VARCHAR(8) NOT NULL, | |||
START_TIME BIGINT NOT NULL, | |||
END_TIME BIGINT NULL, | |||
CALENDAR_NAME VARCHAR(200) NULL, | |||
MISFIRE_INSTR SMALLINT NULL, | |||
JOB_DATA BLOB NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE QRTZ_SIMPLE_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
REPEAT_COUNT BIGINT NOT NULL, | |||
REPEAT_INTERVAL BIGINT NOT NULL, | |||
TIMES_TRIGGERED BIGINT NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_CRON_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
CRON_EXPRESSION VARCHAR(200) NOT NULL, | |||
TIME_ZONE_ID VARCHAR(80), | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_SIMPROP_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INT NULL, | |||
INT_PROP_2 INT NULL, | |||
LONG_PROP_1 BIGINT NULL, | |||
LONG_PROP_2 BIGINT NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 BIT(1) NULL, | |||
BOOL_PROP_2 BIT(1) NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_BLOB_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
BLOB_DATA BLOB NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_CALENDARS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME VARCHAR(200) NOT NULL, | |||
CALENDAR BLOB NULL, | |||
PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) | |||
); | |||
CREATE TABLE QRTZ_PAUSED_TRIGGER_GRPS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_FIRED_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID VARCHAR(95) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
FIRED_TIME BIGINT NOT NULL, | |||
SCHED_TIME BIGINT NOT NULL, | |||
PRIORITY INTEGER NOT NULL, | |||
STATE VARCHAR(16) NOT NULL, | |||
JOB_NAME VARCHAR(200) NULL, | |||
JOB_GROUP VARCHAR(200) NULL, | |||
IS_NONCONCURRENT BIT(1) NULL, | |||
REQUESTS_RECOVERY BIT(1) NULL, | |||
PRIMARY KEY (SCHED_NAME,ENTRY_ID) | |||
); | |||
CREATE TABLE QRTZ_SCHEDULER_STATE | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
LAST_CHECKIN_TIME BIGINT NOT NULL, | |||
CHECKIN_INTERVAL BIGINT NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) | |||
); | |||
CREATE TABLE QRTZ_LOCKS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME VARCHAR(40) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,LOCK_NAME) | |||
); | |||
CREATE INDEX IDX_QRTZ_J_REQ_RECOVERY ON QRTZ_JOB_DETAILS(SCHED_NAME,REQUESTS_RECOVERY); | |||
CREATE INDEX IDX_QRTZ_J_GRP ON QRTZ_JOB_DETAILS(SCHED_NAME,JOB_GROUP); | |||
CREATE INDEX IDX_QRTZ_T_JG ON QRTZ_TRIGGERS(SCHED_NAME,JOB_GROUP); | |||
CREATE INDEX IDX_QRTZ_T_C ON QRTZ_TRIGGERS(SCHED_NAME,CALENDAR_NAME); | |||
CREATE INDEX IDX_QRTZ_T_G ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_GROUP); | |||
CREATE INDEX IDX_QRTZ_T_STATE ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_STATE); | |||
CREATE INDEX IDX_QRTZ_T_N_STATE ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE); | |||
CREATE INDEX IDX_QRTZ_T_N_G_STATE ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE); | |||
CREATE INDEX IDX_QRTZ_T_NEXT_FIRE_TIME ON QRTZ_TRIGGERS(SCHED_NAME,NEXT_FIRE_TIME); | |||
CREATE INDEX IDX_QRTZ_T_NFT_ST ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME); | |||
CREATE INDEX IDX_QRTZ_T_NFT_MISFIRE ON QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME); | |||
CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE ON QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE); | |||
CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE_GRP ON QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE); | |||
CREATE INDEX IDX_QRTZ_FT_TRIG_INST_NAME ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,INSTANCE_NAME); | |||
CREATE INDEX IDX_QRTZ_FT_INST_JOB_REQ_RCVRY ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY); | |||
CREATE INDEX IDX_QRTZ_FT_J_G ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,JOB_NAME,JOB_GROUP); | |||
CREATE INDEX IDX_QRTZ_FT_JG ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,JOB_GROUP); | |||
CREATE INDEX IDX_QRTZ_FT_T_G ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP); | |||
CREATE INDEX IDX_QRTZ_FT_TG ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_GROUP); |
@@ -0,0 +1,148 @@ | |||
# | |||
# Thanks to Horia Muntean for submitting this.... | |||
# | |||
# .. known to work with DB2 7.1 and the JDBC driver "COM.ibm.db2.jdbc.net.DB2Driver" | |||
# .. likely to work with others... | |||
# | |||
# In your Quartz properties file, you'll need to set | |||
# org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate | |||
# | |||
# If you're using DB2 6.x you'll want to set this property to | |||
# org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.DB2v6Delegate | |||
# | |||
# Note that the blob column size (e.g. blob(2000)) dictates the amount of data that can be stored in | |||
# that blob - i.e. limits the amount of data you can put into your JobDataMap | |||
# | |||
create table qrtz_job_details ( | |||
sched_name varchar(120) not null, | |||
job_name varchar(80) not null, | |||
job_group varchar(80) not null, | |||
description varchar(120) null, | |||
job_class_name varchar(128) not null, | |||
is_durable varchar(1) not null, | |||
is_nonconcurrent varchar(1) not null, | |||
is_update_data varchar(1) not null, | |||
requests_recovery varchar(1) not null, | |||
job_data blob(2000), | |||
primary key (sched_name,job_name,job_group) | |||
) | |||
create table qrtz_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
job_name varchar(80) not null, | |||
job_group varchar(80) not null, | |||
description varchar(120) null, | |||
next_fire_time bigint, | |||
prev_fire_time bigint, | |||
priority integer, | |||
trigger_state varchar(16) not null, | |||
trigger_type varchar(8) not null, | |||
start_time bigint not null, | |||
end_time bigint, | |||
calendar_name varchar(80), | |||
misfire_instr smallint, | |||
job_data blob(2000), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,job_name,job_group) references qrtz_job_details(sched_name,job_name,job_group) | |||
) | |||
create table qrtz_simple_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
repeat_count bigint not null, | |||
repeat_interval bigint not null, | |||
times_triggered bigint not null, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
) | |||
create table qrtz_cron_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
cron_expression varchar(120) not null, | |||
time_zone_id varchar(80), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
) | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
sched_name varchar(120) not null, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INT NULL, | |||
INT_PROP_2 INT NULL, | |||
LONG_PROP_1 BIGINT NULL, | |||
LONG_PROP_2 BIGINT NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 VARCHAR(1) NULL, | |||
BOOL_PROP_2 VARCHAR(1) NULL, | |||
PRIMARY KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(sched_name,TRIGGER_NAME,TRIGGER_GROUP) | |||
) | |||
create table qrtz_blob_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
blob_data blob(2000) null, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
) | |||
create table qrtz_calendars( | |||
sched_name varchar(120) not null, | |||
calendar_name varchar(80) not null, | |||
calendar blob(2000) not null, | |||
primary key (sched_name,calendar_name) | |||
) | |||
create table qrtz_fired_triggers( | |||
sched_name varchar(120) not null, | |||
entry_id varchar(95) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
instance_name varchar(80) not null, | |||
fired_time bigint not null, | |||
sched_time bigint not null, | |||
priority integer not null, | |||
state varchar(16) not null, | |||
job_name varchar(80) null, | |||
job_group varchar(80) null, | |||
is_nonconcurrent varchar(1) null, | |||
requests_recovery varchar(1) null, | |||
primary key (sched_name,entry_id) | |||
); | |||
create table qrtz_paused_trigger_grps( | |||
sched_name varchar(120) not null, | |||
trigger_group varchar(80) not null, | |||
primary key (sched_name,trigger_group) | |||
); | |||
create table qrtz_scheduler_state ( | |||
sched_name varchar(120) not null, | |||
instance_name varchar(80) not null, | |||
last_checkin_time bigint not null, | |||
checkin_interval bigint not null, | |||
primary key (sched_name,instance_name) | |||
); | |||
create table qrtz_locks | |||
( | |||
sched_name varchar(120) not null, | |||
lock_name varchar(40) not null, | |||
primary key (sched_name,lock_name) | |||
); |
@@ -0,0 +1,163 @@ | |||
-- | |||
-- Thanks to Horia Muntean for submitting this, Mikkel Heisterberg for updating it | |||
-- | |||
-- .. known to work with DB2 7.2 and the JDBC driver "COM.ibm.db2.jdbc.net.DB2Driver" | |||
-- .. likely to work with others... | |||
-- | |||
-- In your Quartz properties file, you'll need to set | |||
-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.DB2v7Delegate | |||
-- | |||
-- or | |||
-- | |||
-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate | |||
-- | |||
-- If you're using DB2 6.x you'll want to set this property to | |||
-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.DB2v6Delegate | |||
-- | |||
-- Note that the blob column size (e.g. blob(2000)) dictates the amount of data that can be stored in | |||
-- that blob - i.e. limits the amount of data you can put into your JobDataMap | |||
-- | |||
DROP TABLE QRTZ_FIRED_TRIGGERS; | |||
DROP TABLE QRTZ_PAUSED_TRIGGER_GRPS; | |||
DROP TABLE QRTZ_SCHEDULER_STATE; | |||
DROP TABLE QRTZ_LOCKS; | |||
DROP TABLE QRTZ_SIMPLE_TRIGGERS; | |||
DROP TABLE QRTZ_SIMPROP_TRIGGERS; | |||
DROP TABLE QRTZ_CRON_TRIGGERS; | |||
DROP TABLE QRTZ_TRIGGERS; | |||
DROP TABLE QRTZ_JOB_DETAILS; | |||
DROP TABLE QRTZ_CALENDARS; | |||
DROP TABLE QRTZ_BLOB_TRIGGERS; | |||
create table qrtz_job_details ( | |||
sched_name varchar(120) not null, | |||
job_name varchar(80) not null, | |||
job_group varchar(80) not null, | |||
description varchar(120), | |||
job_class_name varchar(128) not null, | |||
is_durable varchar(1) not null, | |||
is_nonconcurrent varchar(1) not null, | |||
is_update_data varchar(1) not null, | |||
requests_recovery varchar(1) not null, | |||
job_data blob(2000), | |||
primary key (sched_name,job_name,job_group) | |||
); | |||
create table qrtz_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
job_name varchar(80) not null, | |||
job_group varchar(80) not null, | |||
description varchar(120), | |||
next_fire_time bigint, | |||
prev_fire_time bigint, | |||
priority integer, | |||
trigger_state varchar(16) not null, | |||
trigger_type varchar(8) not null, | |||
start_time bigint not null, | |||
end_time bigint, | |||
calendar_name varchar(80), | |||
misfire_instr smallint, | |||
job_data blob(2000), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,job_name,job_group) references qrtz_job_details(sched_name,job_name,job_group) | |||
); | |||
create table qrtz_simple_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
repeat_count bigint not null, | |||
repeat_interval bigint not null, | |||
times_triggered bigint not null, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_cron_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
cron_expression varchar(120) not null, | |||
time_zone_id varchar(80), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
sched_name varchar(120) not null, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INT NULL, | |||
INT_PROP_2 INT NULL, | |||
LONG_PROP_1 BIGINT NULL, | |||
LONG_PROP_2 BIGINT NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 VARCHAR(1) NULL, | |||
BOOL_PROP_2 VARCHAR(1) NULL, | |||
PRIMARY KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(sched_name,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
create table qrtz_blob_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
blob_data blob(2000), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_calendars( | |||
sched_name varchar(120) not null, | |||
calendar_name varchar(80) not null, | |||
calendar blob(2000) not null, | |||
primary key (sched_name,calendar_name) | |||
); | |||
create table qrtz_fired_triggers( | |||
sched_name varchar(120) not null, | |||
entry_id varchar(95) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
instance_name varchar(80) not null, | |||
fired_time bigint not null, | |||
sched_time bigint not null, | |||
priority integer not null, | |||
state varchar(16) not null, | |||
job_name varchar(80), | |||
job_group varchar(80), | |||
is_nonconcurrent varchar(1), | |||
requests_recovery varchar(1), | |||
primary key (sched_name,entry_id) | |||
); | |||
create table qrtz_paused_trigger_grps( | |||
sched_name varchar(120) not null, | |||
trigger_group varchar(80) not null, | |||
primary key (sched_name,trigger_group) | |||
); | |||
create table qrtz_scheduler_state ( | |||
sched_name varchar(120) not null, | |||
instance_name varchar(80) not null, | |||
last_checkin_time bigint not null, | |||
checkin_interval bigint not null, | |||
primary key (sched_name,instance_name) | |||
); | |||
create table qrtz_locks | |||
( | |||
sched_name varchar(120) not null, | |||
lock_name varchar(40) not null, | |||
primary key (sched_name,lock_name) | |||
); |
@@ -0,0 +1,151 @@ | |||
# | |||
# Updated by Claudiu Crisan (claudiu.crisan@schartner.net) | |||
# SQL scripts for DB2 ver 8.1 | |||
# | |||
# Changes: | |||
# - "varchar(1)" replaced with "integer" | |||
# - "field_name varchar(xxx) not null" replaced with "field_name varchar(xxx)" | |||
# | |||
DROP TABLE QRTZ_FIRED_TRIGGERS; | |||
DROP TABLE QRTZ_PAUSED_TRIGGER_GRPS; | |||
DROP TABLE QRTZ_SCHEDULER_STATE; | |||
DROP TABLE QRTZ_LOCKS; | |||
DROP TABLE QRTZ_SIMPLE_TRIGGERS; | |||
DROP TABLE QRTZ_SIMPROP_TRIGGERS; | |||
DROP TABLE QRTZ_CRON_TRIGGERS; | |||
DROP TABLE QRTZ_TRIGGERS; | |||
DROP TABLE QRTZ_JOB_DETAILS; | |||
DROP TABLE QRTZ_CALENDARS; | |||
DROP TABLE QRTZ_BLOB_TRIGGERS; | |||
create table qrtz_job_details( | |||
sched_name varchar(120) not null, | |||
job_name varchar(80) not null, | |||
job_group varchar(80) not null, | |||
description varchar(120), | |||
job_class_name varchar(128) not null, | |||
is_durable integer not null, | |||
is_nonconcurrent integer not null, | |||
is_update_data integer not null, | |||
requests_recovery integer not null, | |||
job_data blob(2000), | |||
primary key (sched_name,job_name,job_group) | |||
); | |||
create table qrtz_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
job_name varchar(80) not null, | |||
job_group varchar(80) not null, | |||
description varchar(120), | |||
next_fire_time bigint, | |||
prev_fire_time bigint, | |||
priority integer, | |||
trigger_state varchar(16) not null, | |||
trigger_type varchar(8) not null, | |||
start_time bigint not null, | |||
end_time bigint, | |||
calendar_name varchar(80), | |||
misfire_instr smallint, | |||
job_data blob(2000), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,job_name,job_group) references qrtz_job_details(sched_name,job_name,job_group) | |||
); | |||
create table qrtz_simple_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
repeat_count bigint not null, | |||
repeat_interval bigint not null, | |||
times_triggered bigint not null, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_cron_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
cron_expression varchar(120) not null, | |||
time_zone_id varchar(80), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
sched_name varchar(120) not null, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INT NULL, | |||
INT_PROP_2 INT NULL, | |||
LONG_PROP_1 BIGINT NULL, | |||
LONG_PROP_2 BIGINT NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 VARCHAR(1) NULL, | |||
BOOL_PROP_2 VARCHAR(1) NULL, | |||
PRIMARY KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(sched_name,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
create table qrtz_blob_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
blob_data blob(2000), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_calendars( | |||
sched_name varchar(120) not null, | |||
calendar_name varchar(80) not null, | |||
calendar blob(2000) not null, | |||
primary key (calendar_name) | |||
); | |||
create table qrtz_fired_triggers( | |||
sched_name varchar(120) not null, | |||
entry_id varchar(95) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
instance_name varchar(80) not null, | |||
fired_time bigint not null, | |||
sched_time bigint not null, | |||
priority integer not null, | |||
state varchar(16) not null, | |||
job_name varchar(80), | |||
job_group varchar(80), | |||
is_nonconcurrent integer, | |||
requests_recovery integer, | |||
primary key (sched_name,entry_id) | |||
); | |||
create table qrtz_paused_trigger_grps( | |||
sched_name varchar(120) not null, | |||
trigger_group varchar(80) not null, | |||
primary key (sched_name,trigger_group) | |||
); | |||
create table qrtz_scheduler_state( | |||
sched_name varchar(120) not null, | |||
instance_name varchar(80) not null, | |||
last_checkin_time bigint not null, | |||
checkin_interval bigint not null, | |||
primary key (sched_name,instance_name) | |||
); | |||
create table qrtz_locks( | |||
sched_name varchar(120) not null, | |||
lock_name varchar(40) not null, | |||
primary key (sched_name,lock_name) | |||
); |
@@ -0,0 +1,141 @@ | |||
DROP TABLE QRTZ_FIRED_TRIGGERS; | |||
DROP TABLE QRTZ_PAUSED_TRIGGER_GRPS; | |||
DROP TABLE QRTZ_SCHEDULER_STATE; | |||
DROP TABLE QRTZ_LOCKS; | |||
DROP TABLE QRTZ_SIMPLE_TRIGGERS; | |||
DROP TABLE QRTZ_SIMPROP_TRIGGERS; | |||
DROP TABLE QRTZ_CRON_TRIGGERS; | |||
DROP TABLE QRTZ_TRIGGERS; | |||
DROP TABLE QRTZ_JOB_DETAILS; | |||
DROP TABLE QRTZ_CALENDARS; | |||
DROP TABLE QRTZ_BLOB_TRIGGERS; | |||
create table qrtz_job_details( | |||
sched_name varchar(120) not null, | |||
job_name varchar(80) not null, | |||
job_group varchar(80) not null, | |||
description varchar(120), | |||
job_class_name varchar(128) not null, | |||
is_durable integer not null, | |||
is_nonconcurrent integer not null, | |||
is_update_data integer not null, | |||
requests_recovery integer not null, | |||
job_data blob(2000), | |||
primary key (sched_name,job_name,job_group) | |||
); | |||
create table qrtz_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
job_name varchar(80) not null, | |||
job_group varchar(80) not null, | |||
description varchar(120), | |||
next_fire_time bigint, | |||
prev_fire_time bigint, | |||
priority integer, | |||
trigger_state varchar(16) not null, | |||
trigger_type varchar(8) not null, | |||
start_time bigint not null, | |||
end_time bigint, | |||
calendar_name varchar(80), | |||
misfire_instr smallint, | |||
job_data blob(2000), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,job_name,job_group) references qrtz_job_details(sched_name,job_name,job_group) | |||
); | |||
create table qrtz_simple_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
repeat_count bigint not null, | |||
repeat_interval bigint not null, | |||
times_triggered bigint not null, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_cron_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
cron_expression varchar(120) not null, | |||
time_zone_id varchar(80), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
sched_name varchar(120) not null, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512), | |||
STR_PROP_2 VARCHAR(512), | |||
STR_PROP_3 VARCHAR(512), | |||
INT_PROP_1 INT, | |||
INT_PROP_2 INT, | |||
LONG_PROP_1 BIGINT, | |||
LONG_PROP_2 BIGINT, | |||
DEC_PROP_1 NUMERIC(13,4), | |||
DEC_PROP_2 NUMERIC(13,4), | |||
BOOL_PROP_1 VARCHAR(1), | |||
BOOL_PROP_2 VARCHAR(1), | |||
PRIMARY KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (sched_name,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(sched_name,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
create table qrtz_blob_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
blob_data blob(2000), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_calendars( | |||
sched_name varchar(120) not null, | |||
calendar_name varchar(80) not null, | |||
calendar blob(2000) not null, | |||
primary key (calendar_name) | |||
); | |||
create table qrtz_fired_triggers( | |||
sched_name varchar(120) not null, | |||
entry_id varchar(95) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
instance_name varchar(80) not null, | |||
fired_time bigint not null, | |||
sched_time bigint not null, | |||
priority integer not null, | |||
state varchar(16) not null, | |||
job_name varchar(80), | |||
job_group varchar(80), | |||
is_nonconcurrent integer, | |||
requests_recovery integer, | |||
primary key (sched_name,entry_id) | |||
); | |||
create table qrtz_paused_trigger_grps( | |||
sched_name varchar(120) not null, | |||
trigger_group varchar(80) not null, | |||
primary key (sched_name,trigger_group) | |||
); | |||
create table qrtz_scheduler_state( | |||
sched_name varchar(120) not null, | |||
instance_name varchar(80) not null, | |||
last_checkin_time bigint not null, | |||
checkin_interval bigint not null, | |||
primary key (sched_name,instance_name) | |||
); | |||
create table qrtz_locks( | |||
sched_name varchar(120) not null, | |||
lock_name varchar(40) not null, | |||
primary key (sched_name,lock_name) | |||
); |
@@ -0,0 +1,174 @@ | |||
-- | |||
-- Apache Derby scripts by Steve Stewart, updated by Ronald Pomeroy | |||
-- Based on Srinivas Venkatarangaiah's file for Cloudscape | |||
-- | |||
-- Known to work with Apache Derby 10.0.2.1, or 10.6.2.1 | |||
-- | |||
-- Updated by Zemian Deng <saltnlight5@gmail.com> on 08/21/2011 | |||
-- * Fixed nullable fields on qrtz_simprop_triggers table. | |||
-- * Added Derby QuickStart comments and drop tables statements. | |||
-- | |||
-- DerbyDB + Quartz Quick Guide: | |||
-- * Derby comes with Oracle JDK! For Java6, it default install into C:/Program Files/Sun/JavaDB on Windows. | |||
-- 1. Create a derby.properties file under JavaDB directory, and have the following: | |||
-- derby.connection.requireAuthentication = true | |||
-- derby.authentication.provider = BUILTIN | |||
-- derby.user.quartz2=quartz2123 | |||
-- 2. Start the DB server by running bin/startNetworkServer script. | |||
-- 3. On a new terminal, run bin/ij tool to bring up an SQL prompt, then run: | |||
-- connect 'jdbc:derby://localhost:1527/quartz2;user=quartz2;password=quartz2123;create=true'; | |||
-- run 'quartz/docs/dbTables/tables_derby.sql'; | |||
-- Now in quartz.properties, you may use these properties: | |||
-- org.quartz.dataSource.quartzDataSource.driver = org.apache.derby.jdbc.ClientDriver | |||
-- org.quartz.dataSource.quartzDataSource.URL = jdbc:derby://localhost:1527/quartz2 | |||
-- org.quartz.dataSource.quartzDataSource.user = quartz2 | |||
-- org.quartz.dataSource.quartzDataSource.password = quartz2123 | |||
-- | |||
-- Auto drop and reset tables | |||
-- Derby doesn't support if exists condition on table drop, so user must manually do this step if needed to. | |||
-- drop table qrtz_fired_triggers; | |||
-- drop table qrtz_paused_trigger_grps; | |||
-- drop table qrtz_scheduler_state; | |||
-- drop table qrtz_locks; | |||
-- drop table qrtz_simple_triggers; | |||
-- drop table qrtz_simprop_triggers; | |||
-- drop table qrtz_cron_triggers; | |||
-- drop table qrtz_blob_triggers; | |||
-- drop table qrtz_triggers; | |||
-- drop table qrtz_job_details; | |||
-- drop table qrtz_calendars; | |||
create table qrtz_job_details ( | |||
sched_name varchar(120) not null, | |||
job_name varchar(200) not null, | |||
job_group varchar(200) not null, | |||
description varchar(250) , | |||
job_class_name varchar(250) not null, | |||
is_durable varchar(5) not null, | |||
is_nonconcurrent varchar(5) not null, | |||
is_update_data varchar(5) not null, | |||
requests_recovery varchar(5) not null, | |||
job_data blob, | |||
primary key (sched_name,job_name,job_group) | |||
); | |||
create table qrtz_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
job_name varchar(200) not null, | |||
job_group varchar(200) not null, | |||
description varchar(250), | |||
next_fire_time bigint, | |||
prev_fire_time bigint, | |||
priority integer, | |||
trigger_state varchar(16) not null, | |||
trigger_type varchar(8) not null, | |||
start_time bigint not null, | |||
end_time bigint, | |||
calendar_name varchar(200), | |||
misfire_instr smallint, | |||
job_data blob, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,job_name,job_group) references qrtz_job_details(sched_name,job_name,job_group) | |||
); | |||
create table qrtz_simple_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
repeat_count bigint not null, | |||
repeat_interval bigint not null, | |||
times_triggered bigint not null, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_cron_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
cron_expression varchar(120) not null, | |||
time_zone_id varchar(80), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_simprop_triggers | |||
( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
str_prop_1 varchar(512), | |||
str_prop_2 varchar(512), | |||
str_prop_3 varchar(512), | |||
int_prop_1 int, | |||
int_prop_2 int, | |||
long_prop_1 bigint, | |||
long_prop_2 bigint, | |||
dec_prop_1 numeric(13,4), | |||
dec_prop_2 numeric(13,4), | |||
bool_prop_1 varchar(5), | |||
bool_prop_2 varchar(5), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) | |||
references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_blob_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
blob_data blob, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_calendars( | |||
sched_name varchar(120) not null, | |||
calendar_name varchar(200) not null, | |||
calendar blob not null, | |||
primary key (sched_name,calendar_name) | |||
); | |||
create table qrtz_paused_trigger_grps | |||
( | |||
sched_name varchar(120) not null, | |||
trigger_group varchar(200) not null, | |||
primary key (sched_name,trigger_group) | |||
); | |||
create table qrtz_fired_triggers( | |||
sched_name varchar(120) not null, | |||
entry_id varchar(95) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
instance_name varchar(200) not null, | |||
fired_time bigint not null, | |||
sched_time bigint not null, | |||
priority integer not null, | |||
state varchar(16) not null, | |||
job_name varchar(200), | |||
job_group varchar(200), | |||
is_nonconcurrent varchar(5), | |||
requests_recovery varchar(5), | |||
primary key (sched_name,entry_id) | |||
); | |||
create table qrtz_scheduler_state | |||
( | |||
sched_name varchar(120) not null, | |||
instance_name varchar(200) not null, | |||
last_checkin_time bigint not null, | |||
checkin_interval bigint not null, | |||
primary key (sched_name,instance_name) | |||
); | |||
create table qrtz_locks | |||
( | |||
sched_name varchar(120) not null, | |||
lock_name varchar(40) not null, | |||
primary key (sched_name,lock_name) | |||
); | |||
@@ -0,0 +1,141 @@ | |||
-- | |||
-- Apache Derby scripts by Steve Stewart. | |||
-- Based on Srinivas Venkatarangaiah's file for Cloudscape | |||
-- | |||
-- In your Quartz properties file, you'll need to set | |||
-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.CloudscapeDelegate | |||
-- | |||
-- Known to work with Apache Derby 10.0.2.1 | |||
-- | |||
create table qrtz_job_details ( | |||
sched_name varchar(120) not null, | |||
job_name varchar(200) not null, | |||
job_group varchar(200) not null, | |||
description varchar(250) , | |||
job_class_name varchar(250) not null, | |||
is_durable varchar(5) not null, | |||
is_nonconcurrent varchar(5) not null, | |||
is_update_data varchar(5) not null, | |||
requests_recovery varchar(5) not null, | |||
job_data blob, | |||
primary key (sched_name,job_name,job_group) | |||
); | |||
create table qrtz_triggers ( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
job_name varchar(200) not null, | |||
job_group varchar(200) not null, | |||
description varchar(250) , | |||
next_fire_time bigint, | |||
prev_fire_time bigint, | |||
priority integer, | |||
trigger_state varchar(16) not null, | |||
trigger_type varchar(8) not null, | |||
start_time bigint not null, | |||
end_time bigint, | |||
calendar_name varchar(200), | |||
misfire_instr smallint, | |||
job_data blob, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,job_name,job_group) references qrtz_job_details(sched_name,job_name,job_group) | |||
); | |||
create table qrtz_simple_triggers ( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
repeat_count bigint not null, | |||
repeat_interval bigint not null, | |||
times_triggered bigint not null, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_cron_triggers ( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
cron_expression varchar(120) not null, | |||
time_zone_id varchar(80), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_simprop_triggers | |||
( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
str_prop_1 varchar(512), | |||
str_prop_2 varchar(512), | |||
str_prop_3 varchar(512), | |||
int_prop_1 int, | |||
int_prop_2 int, | |||
long_prop_1 bigint, | |||
long_prop_2 bigint, | |||
dec_prop_1 numeric(13,4), | |||
dec_prop_2 numeric(13,4), | |||
bool_prop_1 varchar(5), | |||
bool_prop_2 varchar(5), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) | |||
references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_blob_triggers ( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
blob_data blob , | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_calendars ( | |||
sched_name varchar(120) not null, | |||
calendar_name varchar(200) not null, | |||
calendar blob not null, | |||
primary key (sched_name,calendar_name) | |||
); | |||
create table qrtz_paused_trigger_grps ( | |||
sched_name varchar(120) not null, | |||
trigger_group varchar(200) not null, | |||
primary key (sched_name,trigger_group) | |||
); | |||
create table qrtz_fired_triggers ( | |||
sched_name varchar(120) not null, | |||
entry_id varchar(95) not null, | |||
trigger_name varchar(200) not null, | |||
trigger_group varchar(200) not null, | |||
instance_name varchar(200) not null, | |||
fired_time bigint not null, | |||
sched_time bigint not null, | |||
priority integer not null, | |||
state varchar(16) not null, | |||
job_name varchar(200), | |||
job_group varchar(200), | |||
is_nonconcurrent varchar(5), | |||
requests_recovery varchar(5), | |||
primary key (sched_name,entry_id) | |||
); | |||
create table qrtz_scheduler_state ( | |||
sched_name varchar(120) not null, | |||
instance_name varchar(200) not null, | |||
last_checkin_time bigint not null, | |||
checkin_interval bigint not null, | |||
primary key (sched_name,instance_name) | |||
); | |||
create table qrtz_locks ( | |||
sched_name varchar(120) not null, | |||
lock_name varchar(40) not null, | |||
primary key (sched_name,lock_name) | |||
); | |||
commit; |
@@ -0,0 +1,154 @@ | |||
-- | |||
-- Thanks to Leonardo Alves | |||
-- | |||
DROP TABLE QRTZ_FIRED_TRIGGERS; | |||
DROP TABLE QRTZ_PAUSED_TRIGGER_GRPS; | |||
DROP TABLE QRTZ_SCHEDULER_STATE; | |||
DROP TABLE QRTZ_LOCKS; | |||
DROP TABLE QRTZ_SIMPLE_TRIGGERS; | |||
DROP TABLE QRTZ_SIMPROP_TRIGGERS; | |||
DROP TABLE QRTZ_CRON_TRIGGERS; | |||
DROP TABLE QRTZ_BLOB_TRIGGERS; | |||
DROP TABLE QRTZ_TRIGGERS; | |||
DROP TABLE QRTZ_JOB_DETAILS; | |||
DROP TABLE QRTZ_CALENDARS; | |||
CREATE TABLE QRTZ_JOB_DETAILS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME VARCHAR(60) NOT NULL, | |||
JOB_GROUP VARCHAR(60) NOT NULL, | |||
DESCRIPTION VARCHAR(120), | |||
JOB_CLASS_NAME VARCHAR(128) NOT NULL, | |||
IS_DURABLE VARCHAR(1) NOT NULL, | |||
IS_NONCONCURRENT VARCHAR(1) NOT NULL, | |||
IS_UPDATE_DATA VARCHAR(1) NOT NULL, | |||
REQUESTS_RECOVERY VARCHAR(1) NOT NULL, | |||
JOB_DATA BLOB, | |||
CONSTRAINT PK_QRTZ_JOB_DETAILS PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE QRTZ_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(60) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(60) NOT NULL, | |||
JOB_NAME VARCHAR(60) NOT NULL, | |||
JOB_GROUP VARCHAR(60) NOT NULL, | |||
DESCRIPTION VARCHAR(120), | |||
NEXT_FIRE_TIME BIGINT, | |||
PREV_FIRE_TIME BIGINT, | |||
PRIORITY INTEGER, | |||
TRIGGER_STATE VARCHAR(16) NOT NULL, | |||
TRIGGER_TYPE VARCHAR(8) NOT NULL, | |||
START_TIME BIGINT NOT NULL, | |||
END_TIME BIGINT, | |||
CALENDAR_NAME VARCHAR(60), | |||
MISFIRE_INSTR SMALLINT, | |||
JOB_DATA BLOB, | |||
CONSTRAINT PK_QRTZ_TRIGGERS PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
CONSTRAINT FK_QRTZ_TRIGGERS_1 FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE QRTZ_SIMPLE_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(60) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(60) NOT NULL, | |||
REPEAT_COUNT BIGINT NOT NULL, | |||
REPEAT_INTERVAL BIGINT NOT NULL, | |||
TIMES_TRIGGERED BIGINT NOT NULL, | |||
CONSTRAINT PK_QRTZ_SIMPLE_TRIGGERS PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
CONSTRAINT FK_QRTZ_SIMPLE_TRIGGERS_1 FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_SIMPROP_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INT NULL, | |||
INT_PROP_2 INT NULL, | |||
LONG_PROP_1 BIGINT NULL, | |||
LONG_PROP_2 BIGINT NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 VARCHAR(1) NULL, | |||
BOOL_PROP_2 VARCHAR(1) NULL, | |||
CONSTRAINT PK_QRTZ_SIMPROP_TRIGGERS PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
CONSTRAINT FK_QRTZ_SIMPROP_TRIGGERS_1 FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_CRON_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(60) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(60) NOT NULL, | |||
CRON_EXPRESSION VARCHAR(120) NOT NULL, | |||
TIME_ZONE_ID VARCHAR(60), | |||
CONSTRAINT PK_QRTZ_SIMPLE_TRG PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
CONSTRAINT FK_QRTZ_SIMPLE_TRG_1 FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_BLOB_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(60) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(60) NOT NULL, | |||
BLOB_DATA BLOB, | |||
CONSTRAINT PK_QRTZ_BLOB_TRIGGERS PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
CONSTRAINT FK_QRTZ_BLOB_TRIGGERS_1 FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_CALENDARS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME VARCHAR(60) NOT NULL, | |||
CALENDAR BLOB NOT NULL, | |||
CONSTRAINT PK_QRTZ_CALENDARS PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) | |||
); | |||
CREATE TABLE QRTZ_PAUSED_TRIGGER_GRPS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(60) NOT NULL, | |||
CONSTRAINT PK_QRTZ_PAUSED_TRIGGER_GRPS PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_FIRED_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID VARCHAR(95) NOT NULL, | |||
TRIGGER_NAME VARCHAR(60) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(60) NOT NULL, | |||
INSTANCE_NAME VARCHAR(80) NOT NULL, | |||
FIRED_TIME BIGINT NOT NULL, | |||
SCHED_TIME BIGINT NOT NULL, | |||
PRIORITY INTEGER NOT NULL, | |||
STATE VARCHAR(16) NOT NULL, | |||
JOB_NAME VARCHAR(60), | |||
JOB_GROUP VARCHAR(60), | |||
IS_NONCONCURRENT VARCHAR(1), | |||
REQUESTS_RECOVERY VARCHAR(1), | |||
CONSTRAINT PK_QRTZ_FIRED_TRIGGERS PRIMARY KEY (SCHED_NAME,ENTRY_ID) | |||
); | |||
CREATE TABLE QRTZ_SCHEDULER_STATE ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME VARCHAR(80) NOT NULL, | |||
LAST_CHECKIN_TIME BIGINT NOT NULL, | |||
CHECKIN_INTERVAL BIGINT NOT NULL, | |||
CONSTRAINT PK_QRTZ_SCHEDULER_STATE PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) | |||
); | |||
CREATE TABLE QRTZ_LOCKS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME VARCHAR(40) NOT NULL, | |||
CONSTRAINT PK_QRTZ_LOCKS PRIMARY KEY (SCHED_NAME,LOCK_NAME) | |||
); | |||
COMMIT; |
@@ -0,0 +1,249 @@ | |||
-- Thanks to Amir Kibbar and Peter Rietzler for contributing the schema for H2 database, | |||
-- and verifying that it works with Quartz's StdJDBCDelegate | |||
-- | |||
-- Note, Quartz depends on row-level locking which means you must use the MVCC=TRUE | |||
-- setting on your H2 database, or you will experience dead-locks | |||
-- | |||
-- | |||
-- In your Quartz properties file, you'll need to set | |||
-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate | |||
CREATE TABLE QRTZ_CALENDARS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME VARCHAR (200) NOT NULL , | |||
CALENDAR IMAGE NOT NULL | |||
); | |||
CREATE TABLE QRTZ_CRON_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR (200) NOT NULL , | |||
TRIGGER_GROUP VARCHAR (200) NOT NULL , | |||
CRON_EXPRESSION VARCHAR (120) NOT NULL , | |||
TIME_ZONE_ID VARCHAR (80) | |||
); | |||
CREATE TABLE QRTZ_FIRED_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID VARCHAR (95) NOT NULL , | |||
TRIGGER_NAME VARCHAR (200) NOT NULL , | |||
TRIGGER_GROUP VARCHAR (200) NOT NULL , | |||
INSTANCE_NAME VARCHAR (200) NOT NULL , | |||
FIRED_TIME BIGINT NOT NULL , | |||
SCHED_TIME BIGINT NOT NULL , | |||
PRIORITY INTEGER NOT NULL , | |||
STATE VARCHAR (16) NOT NULL, | |||
JOB_NAME VARCHAR (200) NULL , | |||
JOB_GROUP VARCHAR (200) NULL , | |||
IS_NONCONCURRENT BOOLEAN NULL , | |||
REQUESTS_RECOVERY BOOLEAN NULL | |||
); | |||
CREATE TABLE QRTZ_PAUSED_TRIGGER_GRPS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP VARCHAR (200) NOT NULL | |||
); | |||
CREATE TABLE QRTZ_SCHEDULER_STATE ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME VARCHAR (200) NOT NULL , | |||
LAST_CHECKIN_TIME BIGINT NOT NULL , | |||
CHECKIN_INTERVAL BIGINT NOT NULL | |||
); | |||
CREATE TABLE QRTZ_LOCKS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME VARCHAR (40) NOT NULL | |||
); | |||
CREATE TABLE QRTZ_JOB_DETAILS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME VARCHAR (200) NOT NULL , | |||
JOB_GROUP VARCHAR (200) NOT NULL , | |||
DESCRIPTION VARCHAR (250) NULL , | |||
JOB_CLASS_NAME VARCHAR (250) NOT NULL , | |||
IS_DURABLE BOOLEAN NOT NULL , | |||
IS_NONCONCURRENT BOOLEAN NOT NULL , | |||
IS_UPDATE_DATA BOOLEAN NOT NULL , | |||
REQUESTS_RECOVERY BOOLEAN NOT NULL , | |||
JOB_DATA IMAGE NULL | |||
); | |||
CREATE TABLE QRTZ_SIMPLE_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR (200) NOT NULL , | |||
TRIGGER_GROUP VARCHAR (200) NOT NULL , | |||
REPEAT_COUNT BIGINT NOT NULL , | |||
REPEAT_INTERVAL BIGINT NOT NULL , | |||
TIMES_TRIGGERED BIGINT NOT NULL | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INTEGER NULL, | |||
INT_PROP_2 INTEGER NULL, | |||
LONG_PROP_1 BIGINT NULL, | |||
LONG_PROP_2 BIGINT NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 BOOLEAN NULL, | |||
BOOL_PROP_2 BOOLEAN NULL, | |||
); | |||
CREATE TABLE QRTZ_BLOB_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR (200) NOT NULL , | |||
TRIGGER_GROUP VARCHAR (200) NOT NULL , | |||
BLOB_DATA IMAGE NULL | |||
); | |||
CREATE TABLE QRTZ_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR (200) NOT NULL , | |||
TRIGGER_GROUP VARCHAR (200) NOT NULL , | |||
JOB_NAME VARCHAR (200) NOT NULL , | |||
JOB_GROUP VARCHAR (200) NOT NULL , | |||
DESCRIPTION VARCHAR (250) NULL , | |||
NEXT_FIRE_TIME BIGINT NULL , | |||
PREV_FIRE_TIME BIGINT NULL , | |||
PRIORITY INTEGER NULL , | |||
TRIGGER_STATE VARCHAR (16) NOT NULL , | |||
TRIGGER_TYPE VARCHAR (8) NOT NULL , | |||
START_TIME BIGINT NOT NULL , | |||
END_TIME BIGINT NULL , | |||
CALENDAR_NAME VARCHAR (200) NULL , | |||
MISFIRE_INSTR SMALLINT NULL , | |||
JOB_DATA IMAGE NULL | |||
); | |||
ALTER TABLE QRTZ_CALENDARS ADD | |||
CONSTRAINT PK_QRTZ_CALENDARS PRIMARY KEY | |||
( | |||
SCHED_NAME, | |||
CALENDAR_NAME | |||
); | |||
ALTER TABLE QRTZ_CRON_TRIGGERS ADD | |||
CONSTRAINT PK_QRTZ_CRON_TRIGGERS PRIMARY KEY | |||
( | |||
SCHED_NAME, | |||
TRIGGER_NAME, | |||
TRIGGER_GROUP | |||
); | |||
ALTER TABLE QRTZ_FIRED_TRIGGERS ADD | |||
CONSTRAINT PK_QRTZ_FIRED_TRIGGERS PRIMARY KEY | |||
( | |||
SCHED_NAME, | |||
ENTRY_ID | |||
); | |||
ALTER TABLE QRTZ_PAUSED_TRIGGER_GRPS ADD | |||
CONSTRAINT PK_QRTZ_PAUSED_TRIGGER_GRPS PRIMARY KEY | |||
( | |||
SCHED_NAME, | |||
TRIGGER_GROUP | |||
); | |||
ALTER TABLE QRTZ_SCHEDULER_STATE ADD | |||
CONSTRAINT PK_QRTZ_SCHEDULER_STATE PRIMARY KEY | |||
( | |||
SCHED_NAME, | |||
INSTANCE_NAME | |||
); | |||
ALTER TABLE QRTZ_LOCKS ADD | |||
CONSTRAINT PK_QRTZ_LOCKS PRIMARY KEY | |||
( | |||
SCHED_NAME, | |||
LOCK_NAME | |||
); | |||
ALTER TABLE QRTZ_JOB_DETAILS ADD | |||
CONSTRAINT PK_QRTZ_JOB_DETAILS PRIMARY KEY | |||
( | |||
SCHED_NAME, | |||
JOB_NAME, | |||
JOB_GROUP | |||
); | |||
ALTER TABLE QRTZ_SIMPLE_TRIGGERS ADD | |||
CONSTRAINT PK_QRTZ_SIMPLE_TRIGGERS PRIMARY KEY | |||
( | |||
SCHED_NAME, | |||
TRIGGER_NAME, | |||
TRIGGER_GROUP | |||
); | |||
ALTER TABLE QRTZ_SIMPROP_TRIGGERS ADD | |||
CONSTRAINT PK_QRTZ_SIMPROP_TRIGGERS PRIMARY KEY | |||
( | |||
SCHED_NAME, | |||
TRIGGER_NAME, | |||
TRIGGER_GROUP | |||
); | |||
ALTER TABLE QRTZ_TRIGGERS ADD | |||
CONSTRAINT PK_QRTZ_TRIGGERS PRIMARY KEY | |||
( | |||
SCHED_NAME, | |||
TRIGGER_NAME, | |||
TRIGGER_GROUP | |||
); | |||
ALTER TABLE QRTZ_CRON_TRIGGERS ADD | |||
CONSTRAINT FK_QRTZ_CRON_TRIGGERS_QRTZ_TRIGGERS FOREIGN KEY | |||
( | |||
SCHED_NAME, | |||
TRIGGER_NAME, | |||
TRIGGER_GROUP | |||
) REFERENCES QRTZ_TRIGGERS ( | |||
SCHED_NAME, | |||
TRIGGER_NAME, | |||
TRIGGER_GROUP | |||
) ON DELETE CASCADE; | |||
ALTER TABLE QRTZ_SIMPLE_TRIGGERS ADD | |||
CONSTRAINT FK_QRTZ_SIMPLE_TRIGGERS_QRTZ_TRIGGERS FOREIGN KEY | |||
( | |||
SCHED_NAME, | |||
TRIGGER_NAME, | |||
TRIGGER_GROUP | |||
) REFERENCES QRTZ_TRIGGERS ( | |||
SCHED_NAME, | |||
TRIGGER_NAME, | |||
TRIGGER_GROUP | |||
) ON DELETE CASCADE; | |||
ALTER TABLE QRTZ_SIMPROP_TRIGGERS ADD | |||
CONSTRAINT FK_QRTZ_SIMPROP_TRIGGERS_QRTZ_TRIGGERS FOREIGN KEY | |||
( | |||
SCHED_NAME, | |||
TRIGGER_NAME, | |||
TRIGGER_GROUP | |||
) REFERENCES QRTZ_TRIGGERS ( | |||
SCHED_NAME, | |||
TRIGGER_NAME, | |||
TRIGGER_GROUP | |||
) ON DELETE CASCADE; | |||
ALTER TABLE QRTZ_TRIGGERS ADD | |||
CONSTRAINT FK_QRTZ_TRIGGERS_QRTZ_JOB_DETAILS FOREIGN KEY | |||
( | |||
SCHED_NAME, | |||
JOB_NAME, | |||
JOB_GROUP | |||
) REFERENCES QRTZ_JOB_DETAILS ( | |||
SCHED_NAME, | |||
JOB_NAME, | |||
JOB_GROUP | |||
); | |||
COMMIT; |
@@ -0,0 +1,161 @@ | |||
-- | |||
-- In your Quartz properties file, you'll need to set | |||
-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.HSQLDBDelegate | |||
-- | |||
DROP TABLE qrtz_locks IF EXISTS; | |||
DROP TABLE qrtz_scheduler_state IF EXISTS; | |||
DROP TABLE qrtz_fired_triggers IF EXISTS; | |||
DROP TABLE qrtz_paused_trigger_grps IF EXISTS; | |||
DROP TABLE qrtz_calendars IF EXISTS; | |||
DROP TABLE qrtz_blob_triggers IF EXISTS; | |||
DROP TABLE qrtz_cron_triggers IF EXISTS; | |||
DROP TABLE qrtz_simple_triggers IF EXISTS; | |||
DROP TABLE qrtz_simprop_triggers IF EXISTS; | |||
DROP TABLE qrtz_triggers IF EXISTS; | |||
DROP TABLE qrtz_job_details IF EXISTS; | |||
CREATE TABLE qrtz_job_details | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
JOB_CLASS_NAME VARCHAR(250) NOT NULL, | |||
IS_DURABLE BOOLEAN NOT NULL, | |||
IS_NONCONCURRENT BOOLEAN NOT NULL, | |||
IS_UPDATE_DATA BOOLEAN NOT NULL, | |||
REQUESTS_RECOVERY BOOLEAN NOT NULL, | |||
JOB_DATA BINARY NULL, | |||
PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE qrtz_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
NEXT_FIRE_TIME NUMERIC(13) NULL, | |||
PREV_FIRE_TIME NUMERIC(13) NULL, | |||
PRIORITY INTEGER NULL, | |||
TRIGGER_STATE VARCHAR(16) NOT NULL, | |||
TRIGGER_TYPE VARCHAR(8) NOT NULL, | |||
START_TIME NUMERIC(13) NOT NULL, | |||
END_TIME NUMERIC(13) NULL, | |||
CALENDAR_NAME VARCHAR(200) NULL, | |||
MISFIRE_INSTR NUMERIC(2) NULL, | |||
JOB_DATA BINARY NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE qrtz_simple_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
REPEAT_COUNT NUMERIC(7) NOT NULL, | |||
REPEAT_INTERVAL NUMERIC(12) NOT NULL, | |||
TIMES_TRIGGERED NUMERIC(10) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_cron_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
CRON_EXPRESSION VARCHAR(120) NOT NULL, | |||
TIME_ZONE_ID VARCHAR(80), | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 NUMERIC(9) NULL, | |||
INT_PROP_2 NUMERIC(9) NULL, | |||
LONG_PROP_1 NUMERIC(13) NULL, | |||
LONG_PROP_2 NUMERIC(13) NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 BOOLEAN NULL, | |||
BOOL_PROP_2 BOOLEAN NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_blob_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
BLOB_DATA BINARY NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_calendars | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME VARCHAR(200) NOT NULL, | |||
CALENDAR BINARY NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) | |||
); | |||
CREATE TABLE qrtz_paused_trigger_grps | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_fired_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID VARCHAR(95) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
FIRED_TIME NUMERIC(13) NOT NULL, | |||
SCHED_TIME NUMERIC(13) NOT NULL, | |||
PRIORITY INTEGER NOT NULL, | |||
STATE VARCHAR(16) NOT NULL, | |||
JOB_NAME VARCHAR(200) NULL, | |||
JOB_GROUP VARCHAR(200) NULL, | |||
IS_NONCONCURRENT BOOLEAN NULL, | |||
REQUESTS_RECOVERY BOOLEAN NULL, | |||
PRIMARY KEY (SCHED_NAME,ENTRY_ID) | |||
); | |||
CREATE TABLE qrtz_scheduler_state | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
LAST_CHECKIN_TIME NUMERIC(13) NOT NULL, | |||
CHECKIN_INTERVAL NUMERIC(13) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) | |||
); | |||
CREATE TABLE qrtz_locks | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME VARCHAR(40) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,LOCK_NAME) | |||
); | |||
@@ -0,0 +1,156 @@ | |||
# | |||
# Thanks to Joseph Wilkicki for submitting this file's contents | |||
# | |||
# In your Quartz properties file, you'll need to set | |||
# org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.HSQLDBDelegate | |||
# | |||
# Some users report the need to change the fields | |||
# with datatype "OTHER" to datatype "BINARY" with | |||
# particular versions (e.g. 1.7.1) of HSQLDB | |||
# | |||
CREATE TABLE qrtz_job_details | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME LONGVARCHAR(80) NOT NULL, | |||
JOB_GROUP LONGVARCHAR(80) NOT NULL, | |||
DESCRIPTION LONGVARCHAR(120) NULL, | |||
JOB_CLASS_NAME LONGVARCHAR(128) NOT NULL, | |||
IS_DURABLE LONGVARCHAR(1) NOT NULL, | |||
IS_NONCONCURRENT LONGVARCHAR(1) NOT NULL, | |||
IS_UPDATE_DATA LONGVARCHAR(1) NOT NULL, | |||
REQUESTS_RECOVERY LONGVARCHAR(1) NOT NULL, | |||
JOB_DATA OTHER NULL, | |||
PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE qrtz_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME LONGVARCHAR(80) NOT NULL, | |||
TRIGGER_GROUP LONGVARCHAR(80) NOT NULL, | |||
JOB_NAME LONGVARCHAR(80) NOT NULL, | |||
JOB_GROUP LONGVARCHAR(80) NOT NULL, | |||
DESCRIPTION LONGVARCHAR(120) NULL, | |||
NEXT_FIRE_TIME NUMERIC(13) NULL, | |||
PREV_FIRE_TIME NUMERIC(13) NULL, | |||
PRIORITY INTEGER NULL, | |||
TRIGGER_STATE LONGVARCHAR(16) NOT NULL, | |||
TRIGGER_TYPE LONGVARCHAR(8) NOT NULL, | |||
START_TIME NUMERIC(13) NOT NULL, | |||
END_TIME NUMERIC(13) NULL, | |||
CALENDAR_NAME LONGVARCHAR(80) NULL, | |||
MISFIRE_INSTR NUMERIC(2) NULL, | |||
JOB_DATA OTHER NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE qrtz_simple_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME LONGVARCHAR(80) NOT NULL, | |||
TRIGGER_GROUP LONGVARCHAR(80) NOT NULL, | |||
REPEAT_COUNT NUMERIC(7) NOT NULL, | |||
REPEAT_INTERVAL NUMERIC(12) NOT NULL, | |||
TIMES_TRIGGERED NUMERIC(10) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_cron_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME LONGVARCHAR(80) NOT NULL, | |||
TRIGGER_GROUP LONGVARCHAR(80) NOT NULL, | |||
CRON_EXPRESSION LONGVARCHAR(120) NOT NULL, | |||
TIME_ZONE_ID LONGVARCHAR(80), | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME LONGVARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP LONGVARCHAR(200) NOT NULL, | |||
STR_PROP_1 LONGVARCHAR(512) NULL, | |||
STR_PROP_2 LONGVARCHAR(512) NULL, | |||
STR_PROP_3 LONGVARCHAR(512) NULL, | |||
INT_PROP_1 NUMERIC(9) NULL, | |||
INT_PROP_2 NUMERIC(9) NULL, | |||
LONG_PROP_1 NUMERIC(13) NULL, | |||
LONG_PROP_2 NUMERIC(13) NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 LONGVARCHAR(1) NULL, | |||
BOOL_PROP_2 LONGVARCHAR(1) NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_blob_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME LONGVARCHAR(80) NOT NULL, | |||
TRIGGER_GROUP LONGVARCHAR(80) NOT NULL, | |||
BLOB_DATA OTHER NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_calendars | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME LONGVARCHAR(80) NOT NULL, | |||
CALENDAR OTHER NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) | |||
); | |||
CREATE TABLE qrtz_paused_trigger_grps | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP LONGVARCHAR(80) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_fired_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID LONGVARCHAR(95) NOT NULL, | |||
TRIGGER_NAME LONGVARCHAR(80) NOT NULL, | |||
TRIGGER_GROUP LONGVARCHAR(80) NOT NULL, | |||
INSTANCE_NAME LONGVARCHAR(80) NOT NULL, | |||
FIRED_TIME NUMERIC(13) NOT NULL, | |||
SCHED_TIME NUMERIC(13) NOT NULL, | |||
PRIORITY INTEGER NOT NULL, | |||
STATE LONGVARCHAR(16) NOT NULL, | |||
JOB_NAME LONGVARCHAR(80) NULL, | |||
JOB_GROUP LONGVARCHAR(80) NULL, | |||
IS_NONCONCURRENT LONGVARCHAR(1) NULL, | |||
REQUESTS_RECOVERY LONGVARCHAR(1) NULL, | |||
PRIMARY KEY (SCHED_NAME,ENTRY_ID) | |||
); | |||
CREATE TABLE qrtz_scheduler_state | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME LONGVARCHAR(80) NOT NULL, | |||
LAST_CHECKIN_TIME NUMERIC(13) NOT NULL, | |||
CHECKIN_INTERVAL NUMERIC(13) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) | |||
); | |||
CREATE TABLE qrtz_locks | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME LONGVARCHAR(40) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,LOCK_NAME) | |||
); | |||
commit; |
@@ -0,0 +1,186 @@ | |||
{ } | |||
{ Thanks to Keith Chew for submitting this. } | |||
{ } | |||
{ use the StdJDBCDelegate with Informix. } | |||
{ } | |||
{ note that Informix has a 18 cahracter limit on the table name, so the prefix had to be shortened to "q" instread of "qrtz_" } | |||
CREATE TABLE qblob_triggers ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME varchar(80) NOT NULL, | |||
TRIGGER_GROUP varchar(80) NOT NULL, | |||
BLOB_DATA byte in table | |||
); | |||
ALTER TABLE qblob_triggers | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP); | |||
CREATE TABLE qcalendars ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME varchar(80) NOT NULL, | |||
CALENDAR byte in table NOT NULL | |||
); | |||
ALTER TABLE qcalendars | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,CALENDAR_NAME); | |||
CREATE TABLE qcron_triggers ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME varchar(80) NOT NULL, | |||
TRIGGER_GROUP varchar(80) NOT NULL, | |||
CRON_EXPRESSION varchar(120) NOT NULL, | |||
TIME_ZONE_ID varchar(80) | |||
); | |||
ALTER TABLE qcron_triggers | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP); | |||
CREATE TABLE qfired_triggers ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID varchar(95) NOT NULL, | |||
TRIGGER_NAME varchar(80) NOT NULL, | |||
TRIGGER_GROUP varchar(80) NOT NULL, | |||
INSTANCE_NAME varchar(80) NOT NULL, | |||
FIRED_TIME numeric(13) NOT NULL, | |||
SCHED_TIME numeric(13) NOT NULL, | |||
PRIORITY integer NOT NULL, | |||
STATE varchar(16) NOT NULL, | |||
JOB_NAME varchar(80), | |||
JOB_GROUP varchar(80), | |||
IS_NONCONCURRENT varchar(1), | |||
REQUESTS_RECOVERY varchar(1) | |||
); | |||
ALTER TABLE qfired_triggers | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,ENTRY_ID); | |||
CREATE TABLE qpaused_trigger_grps ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP varchar(80) NOT NULL | |||
); | |||
ALTER TABLE qpaused_trigger_grps | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP); | |||
CREATE TABLE qscheduler_state ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME varchar(80) NOT NULL, | |||
LAST_CHECKIN_TIME numeric(13) NOT NULL, | |||
CHECKIN_INTERVAL numeric(13) NOT NULL | |||
); | |||
ALTER TABLE qscheduler_state | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,INSTANCE_NAME); | |||
CREATE TABLE qlocks ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME varchar(40) NOT NULL | |||
); | |||
ALTER TABLE qlocks | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,LOCK_NAME); | |||
CREATE TABLE qjob_details ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME varchar(80) NOT NULL, | |||
JOB_GROUP varchar(80) NOT NULL, | |||
DESCRIPTION varchar(120), | |||
JOB_CLASS_NAME varchar(128) NOT NULL, | |||
IS_DURABLE varchar(1) NOT NULL, | |||
IS_NONCONCURRENT varchar(1) NOT NULL, | |||
IS_UPDATE_DATA varchar(1) NOT NULL, | |||
REQUESTS_RECOVERY varchar(1) NOT NULL, | |||
JOB_DATA byte in table | |||
); | |||
ALTER TABLE qjob_details | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,JOB_NAME, JOB_GROUP); | |||
CREATE TABLE qsimple_triggers ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME varchar(80) NOT NULL, | |||
TRIGGER_GROUP varchar(80) NOT NULL, | |||
REPEAT_COUNT numeric(7) NOT NULL, | |||
REPEAT_INTERVAL numeric(12) NOT NULL, | |||
TIMES_TRIGGERED numeric(10) NOT NULL | |||
); | |||
ALTER TABLE qsimple_triggers | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP); | |||
CREATE TABLE qsimprop_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 NUMERIC(9) NULL, | |||
INT_PROP_2 NUMERIC(9) NULL, | |||
LONG_PROP_1 NUMERIC(13) NULL, | |||
LONG_PROP_2 NUMERIC(13) NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 VARCHAR(1) NULL, | |||
BOOL_PROP_2 VARCHAR(1) NULL, | |||
); | |||
ALTER TABLE qsimprop_triggers | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP); | |||
CREATE TABLE qtriggers ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME varchar(80) NOT NULL, | |||
TRIGGER_GROUP varchar(80) NOT NULL, | |||
JOB_NAME varchar(80) NOT NULL, | |||
JOB_GROUP varchar(80) NOT NULL, | |||
DESCRIPTION varchar(120), | |||
NEXT_FIRE_TIME numeric(13), | |||
PREV_FIRE_TIME numeric(13), | |||
PRIORITY integer, | |||
TRIGGER_STATE varchar(16) NOT NULL, | |||
TRIGGER_TYPE varchar(8) NOT NULL, | |||
START_TIME numeric(13) NOT NULL, | |||
END_TIME numeric(13), | |||
CALENDAR_NAME varchar(80), | |||
MISFIRE_INSTR numeric(2), | |||
JOB_DATA byte in table | |||
); | |||
ALTER TABLE qtriggers | |||
ADD CONSTRAINT PRIMARY KEY (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP); | |||
ALTER TABLE qblob_triggers | |||
ADD CONSTRAINT FOREIGN KEY (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP) | |||
REFERENCES qtriggers; | |||
ALTER TABLE qcron_triggers | |||
ADD CONSTRAINT FOREIGN KEY (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP) | |||
REFERENCES qtriggers; | |||
ALTER TABLE qsimple_triggers | |||
ADD CONSTRAINT FOREIGN KEY (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP) | |||
REFERENCES qtriggers; | |||
ALTER TABLE qsimprop_triggers | |||
ADD CONSTRAINT FOREIGN KEY (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP) | |||
REFERENCES qtriggers; | |||
ALTER TABLE qtriggers | |||
ADD CONSTRAINT FOREIGN KEY (SCHED_NAME,JOB_NAME, JOB_GROUP) | |||
REFERENCES qjob_details; | |||
@@ -0,0 +1,168 @@ | |||
# | |||
# Quartz seems to work best with the driver mm.mysql-2.0.7-bin.jar | |||
# | |||
# PLEASE consider using mysql with innodb tables to avoid locking issues | |||
# | |||
# In your Quartz properties file, you'll need to set | |||
# org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate | |||
# | |||
DROP TABLE IF EXISTS QRTZ_FIRED_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_PAUSED_TRIGGER_GRPS; | |||
DROP TABLE IF EXISTS QRTZ_SCHEDULER_STATE; | |||
DROP TABLE IF EXISTS QRTZ_LOCKS; | |||
DROP TABLE IF EXISTS QRTZ_SIMPLE_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_SIMPROP_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_CRON_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_BLOB_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_JOB_DETAILS; | |||
DROP TABLE IF EXISTS QRTZ_CALENDARS; | |||
CREATE TABLE QRTZ_JOB_DETAILS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
JOB_CLASS_NAME VARCHAR(250) NOT NULL, | |||
IS_DURABLE VARCHAR(1) NOT NULL, | |||
IS_NONCONCURRENT VARCHAR(1) NOT NULL, | |||
IS_UPDATE_DATA VARCHAR(1) NOT NULL, | |||
REQUESTS_RECOVERY VARCHAR(1) NOT NULL, | |||
JOB_DATA BLOB NULL, | |||
PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE QRTZ_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
NEXT_FIRE_TIME BIGINT(13) NULL, | |||
PREV_FIRE_TIME BIGINT(13) NULL, | |||
PRIORITY INTEGER NULL, | |||
TRIGGER_STATE VARCHAR(16) NOT NULL, | |||
TRIGGER_TYPE VARCHAR(8) NOT NULL, | |||
START_TIME BIGINT(13) NOT NULL, | |||
END_TIME BIGINT(13) NULL, | |||
CALENDAR_NAME VARCHAR(200) NULL, | |||
MISFIRE_INSTR SMALLINT(2) NULL, | |||
JOB_DATA BLOB NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE QRTZ_SIMPLE_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
REPEAT_COUNT BIGINT(7) NOT NULL, | |||
REPEAT_INTERVAL BIGINT(12) NOT NULL, | |||
TIMES_TRIGGERED BIGINT(10) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_CRON_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
CRON_EXPRESSION VARCHAR(200) NOT NULL, | |||
TIME_ZONE_ID VARCHAR(80), | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_SIMPROP_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INT NULL, | |||
INT_PROP_2 INT NULL, | |||
LONG_PROP_1 BIGINT NULL, | |||
LONG_PROP_2 BIGINT NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 VARCHAR(1) NULL, | |||
BOOL_PROP_2 VARCHAR(1) NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_BLOB_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
BLOB_DATA BLOB NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_CALENDARS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME VARCHAR(200) NOT NULL, | |||
CALENDAR BLOB NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) | |||
); | |||
CREATE TABLE QRTZ_PAUSED_TRIGGER_GRPS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_FIRED_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID VARCHAR(95) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
FIRED_TIME BIGINT(13) NOT NULL, | |||
SCHED_TIME BIGINT(13) NOT NULL, | |||
PRIORITY INTEGER NOT NULL, | |||
STATE VARCHAR(16) NOT NULL, | |||
JOB_NAME VARCHAR(200) NULL, | |||
JOB_GROUP VARCHAR(200) NULL, | |||
IS_NONCONCURRENT VARCHAR(1) NULL, | |||
REQUESTS_RECOVERY VARCHAR(1) NULL, | |||
PRIMARY KEY (SCHED_NAME,ENTRY_ID) | |||
); | |||
CREATE TABLE QRTZ_SCHEDULER_STATE | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
LAST_CHECKIN_TIME BIGINT(13) NOT NULL, | |||
CHECKIN_INTERVAL BIGINT(13) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) | |||
); | |||
CREATE TABLE QRTZ_LOCKS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME VARCHAR(40) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,LOCK_NAME) | |||
); | |||
commit; |
@@ -0,0 +1,179 @@ | |||
# | |||
# In your Quartz properties file, you'll need to set | |||
# org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate | |||
# | |||
# | |||
# By: Ron Cordell - roncordell | |||
# I didn't see this anywhere, so I thought I'd post it here. This is the script from Quartz to create the tables in a MySQL database, modified to use INNODB instead of MYISAM. | |||
DROP TABLE IF EXISTS QRTZ_FIRED_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_PAUSED_TRIGGER_GRPS; | |||
DROP TABLE IF EXISTS QRTZ_SCHEDULER_STATE; | |||
DROP TABLE IF EXISTS QRTZ_LOCKS; | |||
DROP TABLE IF EXISTS QRTZ_SIMPLE_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_SIMPROP_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_CRON_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_BLOB_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_TRIGGERS; | |||
DROP TABLE IF EXISTS QRTZ_JOB_DETAILS; | |||
DROP TABLE IF EXISTS QRTZ_CALENDARS; | |||
CREATE TABLE QRTZ_JOB_DETAILS( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
JOB_CLASS_NAME VARCHAR(250) NOT NULL, | |||
IS_DURABLE VARCHAR(1) NOT NULL, | |||
IS_NONCONCURRENT VARCHAR(1) NOT NULL, | |||
IS_UPDATE_DATA VARCHAR(1) NOT NULL, | |||
REQUESTS_RECOVERY VARCHAR(1) NOT NULL, | |||
JOB_DATA BLOB NULL, | |||
PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP)) | |||
ENGINE=InnoDB; | |||
CREATE TABLE QRTZ_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
NEXT_FIRE_TIME BIGINT(13) NULL, | |||
PREV_FIRE_TIME BIGINT(13) NULL, | |||
PRIORITY INTEGER NULL, | |||
TRIGGER_STATE VARCHAR(16) NOT NULL, | |||
TRIGGER_TYPE VARCHAR(8) NOT NULL, | |||
START_TIME BIGINT(13) NOT NULL, | |||
END_TIME BIGINT(13) NULL, | |||
CALENDAR_NAME VARCHAR(200) NULL, | |||
MISFIRE_INSTR SMALLINT(2) NULL, | |||
JOB_DATA BLOB NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP)) | |||
ENGINE=InnoDB; | |||
CREATE TABLE QRTZ_SIMPLE_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
REPEAT_COUNT BIGINT(7) NOT NULL, | |||
REPEAT_INTERVAL BIGINT(12) NOT NULL, | |||
TIMES_TRIGGERED BIGINT(10) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) | |||
ENGINE=InnoDB; | |||
CREATE TABLE QRTZ_CRON_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
CRON_EXPRESSION VARCHAR(120) NOT NULL, | |||
TIME_ZONE_ID VARCHAR(80), | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) | |||
ENGINE=InnoDB; | |||
CREATE TABLE QRTZ_SIMPROP_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INT NULL, | |||
INT_PROP_2 INT NULL, | |||
LONG_PROP_1 BIGINT NULL, | |||
LONG_PROP_2 BIGINT NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 VARCHAR(1) NULL, | |||
BOOL_PROP_2 VARCHAR(1) NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) | |||
ENGINE=InnoDB; | |||
CREATE TABLE QRTZ_BLOB_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
BLOB_DATA BLOB NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
INDEX (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) | |||
ENGINE=InnoDB; | |||
CREATE TABLE QRTZ_CALENDARS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME VARCHAR(200) NOT NULL, | |||
CALENDAR BLOB NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,CALENDAR_NAME)) | |||
ENGINE=InnoDB; | |||
CREATE TABLE QRTZ_PAUSED_TRIGGER_GRPS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP)) | |||
ENGINE=InnoDB; | |||
CREATE TABLE QRTZ_FIRED_TRIGGERS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID VARCHAR(95) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
FIRED_TIME BIGINT(13) NOT NULL, | |||
SCHED_TIME BIGINT(13) NOT NULL, | |||
PRIORITY INTEGER NOT NULL, | |||
STATE VARCHAR(16) NOT NULL, | |||
JOB_NAME VARCHAR(200) NULL, | |||
JOB_GROUP VARCHAR(200) NULL, | |||
IS_NONCONCURRENT VARCHAR(1) NULL, | |||
REQUESTS_RECOVERY VARCHAR(1) NULL, | |||
PRIMARY KEY (SCHED_NAME,ENTRY_ID)) | |||
ENGINE=InnoDB; | |||
CREATE TABLE QRTZ_SCHEDULER_STATE ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
LAST_CHECKIN_TIME BIGINT(13) NOT NULL, | |||
CHECKIN_INTERVAL BIGINT(13) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,INSTANCE_NAME)) | |||
ENGINE=InnoDB; | |||
CREATE TABLE QRTZ_LOCKS ( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME VARCHAR(40) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,LOCK_NAME)) | |||
ENGINE=InnoDB; | |||
CREATE INDEX IDX_QRTZ_J_REQ_RECOVERY ON QRTZ_JOB_DETAILS(SCHED_NAME,REQUESTS_RECOVERY); | |||
CREATE INDEX IDX_QRTZ_J_GRP ON QRTZ_JOB_DETAILS(SCHED_NAME,JOB_GROUP); | |||
CREATE INDEX IDX_QRTZ_T_J ON QRTZ_TRIGGERS(SCHED_NAME,JOB_NAME,JOB_GROUP); | |||
CREATE INDEX IDX_QRTZ_T_JG ON QRTZ_TRIGGERS(SCHED_NAME,JOB_GROUP); | |||
CREATE INDEX IDX_QRTZ_T_C ON QRTZ_TRIGGERS(SCHED_NAME,CALENDAR_NAME); | |||
CREATE INDEX IDX_QRTZ_T_G ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_GROUP); | |||
CREATE INDEX IDX_QRTZ_T_STATE ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_STATE); | |||
CREATE INDEX IDX_QRTZ_T_N_STATE ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE); | |||
CREATE INDEX IDX_QRTZ_T_N_G_STATE ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE); | |||
CREATE INDEX IDX_QRTZ_T_NEXT_FIRE_TIME ON QRTZ_TRIGGERS(SCHED_NAME,NEXT_FIRE_TIME); | |||
CREATE INDEX IDX_QRTZ_T_NFT_ST ON QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME); | |||
CREATE INDEX IDX_QRTZ_T_NFT_MISFIRE ON QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME); | |||
CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE ON QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE); | |||
CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE_GRP ON QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE); | |||
CREATE INDEX IDX_QRTZ_FT_TRIG_INST_NAME ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,INSTANCE_NAME); | |||
CREATE INDEX IDX_QRTZ_FT_INST_JOB_REQ_RCVRY ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY); | |||
CREATE INDEX IDX_QRTZ_FT_J_G ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,JOB_NAME,JOB_GROUP); | |||
CREATE INDEX IDX_QRTZ_FT_JG ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,JOB_GROUP); | |||
CREATE INDEX IDX_QRTZ_FT_T_G ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP); | |||
CREATE INDEX IDX_QRTZ_FT_TG ON QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_GROUP); | |||
commit; |
@@ -0,0 +1,193 @@ | |||
-- | |||
-- A hint submitted by a user: Oracle DB MUST be created as "shared" and the | |||
-- job_queue_processes parameter must be greater than 2 | |||
-- However, these settings are pretty much standard after any | |||
-- Oracle install, so most users need not worry about this. | |||
-- | |||
-- Many other users (including the primary author of Quartz) have had success | |||
-- runing in dedicated mode, so only consider the above as a hint ;-) | |||
-- | |||
delete from qrtz_fired_triggers; | |||
delete from qrtz_simple_triggers; | |||
delete from qrtz_simprop_triggers; | |||
delete from qrtz_cron_triggers; | |||
delete from qrtz_blob_triggers; | |||
delete from qrtz_triggers; | |||
delete from qrtz_job_details; | |||
delete from qrtz_calendars; | |||
delete from qrtz_paused_trigger_grps; | |||
delete from qrtz_locks; | |||
delete from qrtz_scheduler_state; | |||
drop table qrtz_calendars; | |||
drop table qrtz_fired_triggers; | |||
drop table qrtz_blob_triggers; | |||
drop table qrtz_cron_triggers; | |||
drop table qrtz_simple_triggers; | |||
drop table qrtz_simprop_triggers; | |||
drop table qrtz_triggers; | |||
drop table qrtz_job_details; | |||
drop table qrtz_paused_trigger_grps; | |||
drop table qrtz_locks; | |||
drop table qrtz_scheduler_state; | |||
CREATE TABLE qrtz_job_details | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
JOB_NAME VARCHAR2(200) NOT NULL, | |||
JOB_GROUP VARCHAR2(200) NOT NULL, | |||
DESCRIPTION VARCHAR2(250) NULL, | |||
JOB_CLASS_NAME VARCHAR2(250) NOT NULL, | |||
IS_DURABLE VARCHAR2(1) NOT NULL, | |||
IS_NONCONCURRENT VARCHAR2(1) NOT NULL, | |||
IS_UPDATE_DATA VARCHAR2(1) NOT NULL, | |||
REQUESTS_RECOVERY VARCHAR2(1) NOT NULL, | |||
JOB_DATA BLOB NULL, | |||
CONSTRAINT QRTZ_JOB_DETAILS_PK PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE qrtz_triggers | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(200) NOT NULL, | |||
JOB_NAME VARCHAR2(200) NOT NULL, | |||
JOB_GROUP VARCHAR2(200) NOT NULL, | |||
DESCRIPTION VARCHAR2(250) NULL, | |||
NEXT_FIRE_TIME NUMBER(13) NULL, | |||
PREV_FIRE_TIME NUMBER(13) NULL, | |||
PRIORITY NUMBER(13) NULL, | |||
TRIGGER_STATE VARCHAR2(16) NOT NULL, | |||
TRIGGER_TYPE VARCHAR2(8) NOT NULL, | |||
START_TIME NUMBER(13) NOT NULL, | |||
END_TIME NUMBER(13) NULL, | |||
CALENDAR_NAME VARCHAR2(200) NULL, | |||
MISFIRE_INSTR NUMBER(2) NULL, | |||
JOB_DATA BLOB NULL, | |||
CONSTRAINT QRTZ_TRIGGERS_PK PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
CONSTRAINT QRTZ_TRIGGER_TO_JOBS_FK FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE qrtz_simple_triggers | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(200) NOT NULL, | |||
REPEAT_COUNT NUMBER(7) NOT NULL, | |||
REPEAT_INTERVAL NUMBER(12) NOT NULL, | |||
TIMES_TRIGGERED NUMBER(10) NOT NULL, | |||
CONSTRAINT QRTZ_SIMPLE_TRIG_PK PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
CONSTRAINT QRTZ_SIMPLE_TRIG_TO_TRIG_FK FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_cron_triggers | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(200) NOT NULL, | |||
CRON_EXPRESSION VARCHAR2(120) NOT NULL, | |||
TIME_ZONE_ID VARCHAR2(80), | |||
CONSTRAINT QRTZ_CRON_TRIG_PK PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
CONSTRAINT QRTZ_CRON_TRIG_TO_TRIG_FK FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(200) NOT NULL, | |||
STR_PROP_1 VARCHAR2(512) NULL, | |||
STR_PROP_2 VARCHAR2(512) NULL, | |||
STR_PROP_3 VARCHAR2(512) NULL, | |||
INT_PROP_1 NUMBER(10) NULL, | |||
INT_PROP_2 NUMBER(10) NULL, | |||
LONG_PROP_1 NUMBER(13) NULL, | |||
LONG_PROP_2 NUMBER(13) NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 VARCHAR2(1) NULL, | |||
BOOL_PROP_2 VARCHAR2(1) NULL, | |||
CONSTRAINT QRTZ_SIMPROP_TRIG_PK PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
CONSTRAINT QRTZ_SIMPROP_TRIG_TO_TRIG_FK FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_blob_triggers | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(200) NOT NULL, | |||
BLOB_DATA BLOB NULL, | |||
CONSTRAINT QRTZ_BLOB_TRIG_PK PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
CONSTRAINT QRTZ_BLOB_TRIG_TO_TRIG_FK FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_calendars | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
CALENDAR_NAME VARCHAR2(200) NOT NULL, | |||
CALENDAR BLOB NOT NULL, | |||
CONSTRAINT QRTZ_CALENDARS_PK PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) | |||
); | |||
CREATE TABLE qrtz_paused_trigger_grps | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(200) NOT NULL, | |||
CONSTRAINT QRTZ_PAUSED_TRIG_GRPS_PK PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_fired_triggers | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
ENTRY_ID VARCHAR2(95) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(200) NOT NULL, | |||
INSTANCE_NAME VARCHAR2(200) NOT NULL, | |||
FIRED_TIME NUMBER(13) NOT NULL, | |||
SCHED_TIME NUMBER(13) NOT NULL, | |||
PRIORITY NUMBER(13) NOT NULL, | |||
STATE VARCHAR2(16) NOT NULL, | |||
JOB_NAME VARCHAR2(200) NULL, | |||
JOB_GROUP VARCHAR2(200) NULL, | |||
IS_NONCONCURRENT VARCHAR2(1) NULL, | |||
REQUESTS_RECOVERY VARCHAR2(1) NULL, | |||
CONSTRAINT QRTZ_FIRED_TRIGGER_PK PRIMARY KEY (SCHED_NAME,ENTRY_ID) | |||
); | |||
CREATE TABLE qrtz_scheduler_state | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
INSTANCE_NAME VARCHAR2(200) NOT NULL, | |||
LAST_CHECKIN_TIME NUMBER(13) NOT NULL, | |||
CHECKIN_INTERVAL NUMBER(13) NOT NULL, | |||
CONSTRAINT QRTZ_SCHEDULER_STATE_PK PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) | |||
); | |||
CREATE TABLE qrtz_locks | |||
( | |||
SCHED_NAME VARCHAR2(120) NOT NULL, | |||
LOCK_NAME VARCHAR2(40) NOT NULL, | |||
CONSTRAINT QRTZ_LOCKS_PK PRIMARY KEY (SCHED_NAME,LOCK_NAME) | |||
); | |||
create index idx_qrtz_j_req_recovery on qrtz_job_details(SCHED_NAME,REQUESTS_RECOVERY); | |||
create index idx_qrtz_j_grp on qrtz_job_details(SCHED_NAME,JOB_GROUP); | |||
create index idx_qrtz_t_j on qrtz_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); | |||
create index idx_qrtz_t_jg on qrtz_triggers(SCHED_NAME,JOB_GROUP); | |||
create index idx_qrtz_t_c on qrtz_triggers(SCHED_NAME,CALENDAR_NAME); | |||
create index idx_qrtz_t_g on qrtz_triggers(SCHED_NAME,TRIGGER_GROUP); | |||
create index idx_qrtz_t_state on qrtz_triggers(SCHED_NAME,TRIGGER_STATE); | |||
create index idx_qrtz_t_n_state on qrtz_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE); | |||
create index idx_qrtz_t_n_g_state on qrtz_triggers(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE); | |||
create index idx_qrtz_t_next_fire_time on qrtz_triggers(SCHED_NAME,NEXT_FIRE_TIME); | |||
create index idx_qrtz_t_nft_st on qrtz_triggers(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME); | |||
create index idx_qrtz_t_nft_misfire on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME); | |||
create index idx_qrtz_t_nft_st_misfire on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE); | |||
create index idx_qrtz_t_nft_st_misfire_grp on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE); | |||
create index idx_qrtz_ft_trig_inst_name on qrtz_fired_triggers(SCHED_NAME,INSTANCE_NAME); | |||
create index idx_qrtz_ft_inst_job_req_rcvry on qrtz_fired_triggers(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY); | |||
create index idx_qrtz_ft_j_g on qrtz_fired_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); | |||
create index idx_qrtz_ft_jg on qrtz_fired_triggers(SCHED_NAME,JOB_GROUP); | |||
create index idx_qrtz_ft_t_g on qrtz_fired_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP); | |||
create index idx_qrtz_ft_tg on qrtz_fired_triggers(SCHED_NAME,TRIGGER_GROUP); | |||
@@ -0,0 +1,180 @@ | |||
# | |||
# Thanks to Gregg Freeman | |||
# | |||
# | |||
# ...you may want to change defined the size of the "blob" columns before | |||
# creating the tables (particularly for the qrtz_job_details.job_data column), | |||
# if you will be storing large amounts of data in them | |||
# | |||
# | |||
delete from qrtz_fired_triggers; | |||
delete from qrtz_simple_triggers; | |||
delete from qrtz_simprop_triggers; | |||
delete from qrtz_cron_triggers; | |||
delete from qrtz_blob_triggers; | |||
delete from qrtz_triggers; | |||
delete from qrtz_job_details; | |||
delete from qrtz_calendars; | |||
delete from qrtz_paused_trigger_grps; | |||
delete from qrtz_locks; | |||
delete from qrtz_scheduler_state; | |||
drop table qrtz_calendars; | |||
drop table qrtz_fired_triggers; | |||
drop table qrtz_blob_triggers; | |||
drop table qrtz_cron_triggers; | |||
drop table qrtz_simple_triggers; | |||
drop table qrtz_simprop_triggers; | |||
drop table qrtz_triggers; | |||
drop table qrtz_job_details; | |||
drop table qrtz_paused_trigger_grps; | |||
drop table qrtz_locks; | |||
drop table qrtz_scheduler_state; | |||
CREATE TABLE qrtz_job_details | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME VARCHAR2(80) NOT NULL, | |||
JOB_GROUP VARCHAR2(80) NOT NULL, | |||
DESCRIPTION VARCHAR2(120) NULL, | |||
JOB_CLASS_NAME VARCHAR2(128) NOT NULL, | |||
IS_DURABLE BOOLEAN NOT NULL, | |||
IS_NONCONCURRENT BOOLEAN NOT NULL, | |||
IS_UPDATE_DATA BOOLEAN NOT NULL, | |||
REQUESTS_RECOVERY BOOLEAN NOT NULL, | |||
JOB_DATA BLOB(4K) NULL, | |||
PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE qrtz_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(80) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(80) NOT NULL, | |||
JOB_NAME VARCHAR2(80) NOT NULL, | |||
JOB_GROUP VARCHAR2(80) NOT NULL, | |||
DESCRIPTION VARCHAR2(120) NULL, | |||
NEXT_FIRE_TIME NUMBER(13) NULL, | |||
PREV_FIRE_TIME NUMBER(13) NULL, | |||
PRIORITY NUMBER(13) NULL, | |||
TRIGGER_STATE VARCHAR2(16) NOT NULL, | |||
TRIGGER_TYPE VARCHAR2(8) NOT NULL, | |||
START_TIME NUMBER(13) NOT NULL, | |||
END_TIME NUMBER(13) NULL, | |||
CALENDAR_NAME VARCHAR2(80) NULL, | |||
MISFIRE_INSTR NUMBER(2) NULL, | |||
JOB_DATA BLOB(4K) NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE qrtz_simple_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(80) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(80) NOT NULL, | |||
REPEAT_COUNT NUMBER(7) NOT NULL, | |||
REPEAT_INTERVAL NUMBER(12) NOT NULL, | |||
TIMES_TRIGGERED NUMBER(10) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 NUMBER(10) NULL, | |||
INT_PROP_2 NUMBER(10) NULL, | |||
LONG_PROP_1 NUMBER(13) NULL, | |||
LONG_PROP_2 NUMBER(13) NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 BOOLEAN NULL, | |||
BOOL_PROP_2 BOOLEAN NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_cron_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(80) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(80) NOT NULL, | |||
CRON_EXPRESSION VARCHAR2(120) NOT NULL, | |||
TIME_ZONE_ID VARCHAR2(80), | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_blob_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(80) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(80) NOT NULL, | |||
BLOB_DATA BLOB(4K) NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_calendars | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME VARCHAR2(80) NOT NULL, | |||
CALENDAR BLOB(4K) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) | |||
); | |||
CREATE TABLE qrtz_paused_trigger_grps | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(80) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_fired_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID VARCHAR2(95) NOT NULL, | |||
TRIGGER_NAME VARCHAR2(80) NOT NULL, | |||
TRIGGER_GROUP VARCHAR2(80) NOT NULL, | |||
INSTANCE_NAME VARCHAR2(80) NOT NULL, | |||
FIRED_TIME NUMBER(13) NOT NULL, | |||
SCHED_TIME NUMBER(13) NOT NULL, | |||
PRIORITY NUMBER(13) NOT NULL, | |||
STATE VARCHAR2(16) NOT NULL, | |||
JOB_NAME VARCHAR2(80) NULL, | |||
JOB_GROUP VARCHAR2(80) NULL, | |||
IS_NONCONCURRENT BOOLEAN NULL, | |||
REQUESTS_RECOVERY BOOLEAN NULL, | |||
PRIMARY KEY (SCHED_NAME,ENTRY_ID) | |||
); | |||
CREATE TABLE qrtz_scheduler_state | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME VARCHAR2(80) NOT NULL, | |||
LAST_CHECKIN_TIME NUMBER(13) NOT NULL, | |||
CHECKIN_INTERVAL NUMBER(13) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) | |||
); | |||
CREATE TABLE qrtz_locks | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME VARCHAR2(40) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,LOCK_NAME) | |||
); | |||
commit; |
@@ -0,0 +1,187 @@ | |||
-- Thanks to Patrick Lightbody for submitting this... | |||
-- | |||
-- In your Quartz properties file, you'll need to set | |||
-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate | |||
drop table qrtz_fired_triggers; | |||
DROP TABLE QRTZ_PAUSED_TRIGGER_GRPS; | |||
DROP TABLE QRTZ_SCHEDULER_STATE; | |||
DROP TABLE QRTZ_LOCKS; | |||
drop table qrtz_simple_triggers; | |||
drop table qrtz_cron_triggers; | |||
drop table qrtz_simprop_triggers; | |||
DROP TABLE QRTZ_BLOB_TRIGGERS; | |||
drop table qrtz_triggers; | |||
drop table qrtz_job_details; | |||
drop table qrtz_calendars; | |||
CREATE TABLE qrtz_job_details | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
JOB_CLASS_NAME VARCHAR(250) NOT NULL, | |||
IS_DURABLE BOOL NOT NULL, | |||
IS_NONCONCURRENT BOOL NOT NULL, | |||
IS_UPDATE_DATA BOOL NOT NULL, | |||
REQUESTS_RECOVERY BOOL NOT NULL, | |||
JOB_DATA BYTEA NULL, | |||
PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE qrtz_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
NEXT_FIRE_TIME BIGINT NULL, | |||
PREV_FIRE_TIME BIGINT NULL, | |||
PRIORITY INTEGER NULL, | |||
TRIGGER_STATE VARCHAR(16) NOT NULL, | |||
TRIGGER_TYPE VARCHAR(8) NOT NULL, | |||
START_TIME BIGINT NOT NULL, | |||
END_TIME BIGINT NULL, | |||
CALENDAR_NAME VARCHAR(200) NULL, | |||
MISFIRE_INSTR SMALLINT NULL, | |||
JOB_DATA BYTEA NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE qrtz_simple_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
REPEAT_COUNT BIGINT NOT NULL, | |||
REPEAT_INTERVAL BIGINT NOT NULL, | |||
TIMES_TRIGGERED BIGINT NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_cron_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
CRON_EXPRESSION VARCHAR(120) NOT NULL, | |||
TIME_ZONE_ID VARCHAR(80), | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INT NULL, | |||
INT_PROP_2 INT NULL, | |||
LONG_PROP_1 BIGINT NULL, | |||
LONG_PROP_2 BIGINT NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 BOOL NULL, | |||
BOOL_PROP_2 BOOL NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_blob_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
BLOB_DATA BYTEA NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_calendars | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME VARCHAR(200) NOT NULL, | |||
CALENDAR BYTEA NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) | |||
); | |||
CREATE TABLE qrtz_paused_trigger_grps | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE qrtz_fired_triggers | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID VARCHAR(95) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
FIRED_TIME BIGINT NOT NULL, | |||
SCHED_TIME BIGINT NOT NULL, | |||
PRIORITY INTEGER NOT NULL, | |||
STATE VARCHAR(16) NOT NULL, | |||
JOB_NAME VARCHAR(200) NULL, | |||
JOB_GROUP VARCHAR(200) NULL, | |||
IS_NONCONCURRENT BOOL NULL, | |||
REQUESTS_RECOVERY BOOL NULL, | |||
PRIMARY KEY (SCHED_NAME,ENTRY_ID) | |||
); | |||
CREATE TABLE qrtz_scheduler_state | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
LAST_CHECKIN_TIME BIGINT NOT NULL, | |||
CHECKIN_INTERVAL BIGINT NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) | |||
); | |||
CREATE TABLE qrtz_locks | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME VARCHAR(40) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,LOCK_NAME) | |||
); | |||
create index idx_qrtz_j_req_recovery on qrtz_job_details(SCHED_NAME,REQUESTS_RECOVERY); | |||
create index idx_qrtz_j_grp on qrtz_job_details(SCHED_NAME,JOB_GROUP); | |||
create index idx_qrtz_t_j on qrtz_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); | |||
create index idx_qrtz_t_jg on qrtz_triggers(SCHED_NAME,JOB_GROUP); | |||
create index idx_qrtz_t_c on qrtz_triggers(SCHED_NAME,CALENDAR_NAME); | |||
create index idx_qrtz_t_g on qrtz_triggers(SCHED_NAME,TRIGGER_GROUP); | |||
create index idx_qrtz_t_state on qrtz_triggers(SCHED_NAME,TRIGGER_STATE); | |||
create index idx_qrtz_t_n_state on qrtz_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE); | |||
create index idx_qrtz_t_n_g_state on qrtz_triggers(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE); | |||
create index idx_qrtz_t_next_fire_time on qrtz_triggers(SCHED_NAME,NEXT_FIRE_TIME); | |||
create index idx_qrtz_t_nft_st on qrtz_triggers(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME); | |||
create index idx_qrtz_t_nft_misfire on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME); | |||
create index idx_qrtz_t_nft_st_misfire on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE); | |||
create index idx_qrtz_t_nft_st_misfire_grp on qrtz_triggers(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE); | |||
create index idx_qrtz_ft_trig_inst_name on qrtz_fired_triggers(SCHED_NAME,INSTANCE_NAME); | |||
create index idx_qrtz_ft_inst_job_req_rcvry on qrtz_fired_triggers(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY); | |||
create index idx_qrtz_ft_j_g on qrtz_fired_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP); | |||
create index idx_qrtz_ft_jg on qrtz_fired_triggers(SCHED_NAME,JOB_GROUP); | |||
create index idx_qrtz_ft_t_g on qrtz_fired_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP); | |||
create index idx_qrtz_ft_tg on qrtz_fired_triggers(SCHED_NAME,TRIGGER_GROUP); | |||
commit; |
@@ -0,0 +1,151 @@ | |||
# | |||
# Thanks to Andrew Perepelytsya for submitting this file. | |||
# | |||
# In your Quartz properties file, you'll need to set | |||
# org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate | |||
# | |||
CREATE TABLE QRTZ_JOB_DETAILS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
JOB_CLASS_NAME VARCHAR(128) NOT NULL, | |||
IS_DURABLE VARCHAR(1) NOT NULL, | |||
IS_NONCONCURRENT VARCHAR(1) NOT NULL, | |||
IS_UPDATE_DATA VARCHAR(1) NOT NULL, | |||
REQUESTS_RECOVERY VARCHAR(1) NOT NULL, | |||
JOB_DATA LONG BYTE NULL, | |||
PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE QRTZ_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
JOB_NAME VARCHAR(200) NOT NULL, | |||
JOB_GROUP VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
NEXT_FIRE_TIME FIXED(13) NULL, | |||
PREV_FIRE_TIME FIXED(13) NULL, | |||
PRIORITY FIXED(13) NULL, | |||
TRIGGER_STATE VARCHAR(16) NOT NULL, | |||
TRIGGER_TYPE VARCHAR(8) NOT NULL, | |||
START_TIME FIXED(13) NOT NULL, | |||
END_TIME FIXED(13) NULL, | |||
CALENDAR_NAME VARCHAR(200) NULL, | |||
MISFIRE_INSTR FIXED(2) NULL, | |||
JOB_DATA LONG BYTE NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) REFERENCES QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
); | |||
CREATE TABLE QRTZ_SIMPLE_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
REPEAT_COUNT FIXED(7) NOT NULL, | |||
REPEAT_INTERVAL FIXED(12) NOT NULL, | |||
TIMES_TRIGGERED FIXED(10) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_SIMPROP_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 FIXED(10) NULL, | |||
INT_PROP_2 FIXED(10) NULL, | |||
LONG_PROP_1 FIXED(13) NULL, | |||
LONG_PROP_2 FIXED(13) NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 VARCHAR(1) NULL, | |||
BOOL_PROP_2 VARCHAR(1) NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_CRON_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
CRON_EXPRESSION VARCHAR(120) NOT NULL, | |||
TIME_ZONE_ID VARCHAR(80), | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_BLOB_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
BLOB_DATA LONG BYTE NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), | |||
FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) REFERENCES QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_CALENDARS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
CALENDAR_NAME VARCHAR(200) NOT NULL, | |||
DESCRIPTION VARCHAR(250) NULL, | |||
CALENDAR LONG BYTE NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,CALENDAR_NAME) | |||
); | |||
CREATE TABLE QRTZ_PAUSED_TRIGGER_GRPS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP) | |||
); | |||
CREATE TABLE QRTZ_FIRED_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
ENTRY_ID VARCHAR(95) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
FIRED_TIME FIXED(13) NOT NULL, | |||
SCHED_TIME FIXED(13) NOT NULL, | |||
PRIORITY FIXED(13) NOT NULL, | |||
STATE VARCHAR(16) NOT NULL, | |||
JOB_NAME VARCHAR(200) NULL, | |||
JOB_GROUP VARCHAR(200) NULL, | |||
IS_NONCONCURRENT VARCHAR(1) NULL, | |||
REQUESTS_RECOVERY VARCHAR(1) NULL, | |||
PRIMARY KEY (SCHED_NAME,ENTRY_ID) | |||
); | |||
CREATE TABLE QRTZ_SCHEDULER_STATE | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
INSTANCE_NAME VARCHAR(200) NOT NULL, | |||
LAST_CHECKIN_TIME FIXED(13) NOT NULL, | |||
CHECKIN_INTERVAL FIXED(13) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,INSTANCE_NAME) | |||
); | |||
CREATE TABLE QRTZ_LOCKS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
LOCK_NAME VARCHAR(40) NOT NULL, | |||
PRIMARY KEY (SCHED_NAME,LOCK_NAME) | |||
); | |||
commit; |
@@ -0,0 +1,147 @@ | |||
DROP TABLE qrtz_locks; | |||
DROP TABLE qrtz_scheduler_state; | |||
DROP TABLE qrtz_fired_triggers; | |||
DROP TABLE qrtz_paused_trigger_grps; | |||
DROP TABLE qrtz_calendars; | |||
DROP TABLE qrtz_blob_triggers; | |||
DROP TABLE qrtz_cron_triggers; | |||
DROP TABLE qrtz_simple_triggers; | |||
DROP TABLE qrtz_simprop_triggers; | |||
DROP TABLE qrtz_triggers; | |||
DROP TABLE qrtz_job_details; | |||
create table qrtz_job_details ( | |||
sched_name varchar(120) not null, | |||
job_name varchar(80) not null, | |||
job_group varchar(80) not null, | |||
description varchar(120) , | |||
job_class_name varchar(128) not null, | |||
is_durable varchar(5) not null, | |||
is_nonconcurrent varchar(5) not null, | |||
is_update_data varchar(5) not null, | |||
requests_recovery varchar(5) not null, | |||
job_data long varbinary, | |||
primary key (sched_name,job_name,job_group) | |||
); | |||
create table qrtz_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
job_name varchar(80) not null, | |||
job_group varchar(80) not null, | |||
description varchar(120) , | |||
next_fire_time numeric(13), | |||
prev_fire_time numeric(13), | |||
priority integer, | |||
trigger_state varchar(16) not null, | |||
trigger_type varchar(8) not null, | |||
start_time numeric(13) not null, | |||
end_time numeric(13), | |||
calendar_name varchar(80), | |||
misfire_instr smallint, | |||
job_data long varbinary, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,job_name,job_group) references qrtz_job_details(sched_name,job_name,job_group) | |||
); | |||
create table qrtz_simple_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
repeat_count numeric(13) not null, | |||
repeat_interval numeric(13) not null, | |||
times_triggered numeric(13) not null, | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
CREATE TABLE qrtz_simprop_triggers | |||
( | |||
sched_name varchar(120) not null, | |||
trigger_name VARCHAR(200) NOT NULL, | |||
trigger_group VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INTEGER NULL, | |||
INT_PROP_2 INTEGER NULL, | |||
LONG_PROP_1 NUMERIC(13) NULL, | |||
LONG_PROP_2 NUMERIC(13) NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 VARCHAR(5) NULL, | |||
BOOL_PROP_2 VARCHAR(5) NULL, | |||
PRIMARY KEY (sched_name,trigger_name,trigger_group), | |||
FOREIGN KEY (sched_name,trigger_name,trigger_group) REFERENCES qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_cron_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
cron_expression varchar(120) not null, | |||
time_zone_id varchar(80), | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_blob_triggers( | |||
sched_name varchar(120) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
blob_data long varbinary , | |||
primary key (sched_name,trigger_name,trigger_group), | |||
foreign key (sched_name,trigger_name,trigger_group) references qrtz_triggers(sched_name,trigger_name,trigger_group) | |||
); | |||
create table qrtz_calendars( | |||
sched_name varchar(120) not null, | |||
calendar_name varchar(80) not null, | |||
calendar long varbinary not null, | |||
primary key (sched_name,calendar_name) | |||
); | |||
create table qrtz_paused_trigger_grps | |||
( | |||
sched_name varchar(120) not null, | |||
trigger_group varchar(80) not null, | |||
primary key (sched_name,trigger_group) | |||
); | |||
create table qrtz_fired_triggers( | |||
sched_name varchar(120) not null, | |||
entry_id varchar(95) not null, | |||
trigger_name varchar(80) not null, | |||
trigger_group varchar(80) not null, | |||
instance_name varchar(80) not null, | |||
fired_time numeric(13) not null, | |||
sched_time numeric(13) not null, | |||
priority integer not null, | |||
state varchar(16) not null, | |||
job_name varchar(80) null, | |||
job_group varchar(80) null, | |||
is_nonconcurrent varchar(5) null, | |||
requests_recovery varchar(5) null, | |||
primary key (sched_name,entry_id) | |||
); | |||
create table qrtz_scheduler_state | |||
( | |||
sched_name varchar(120) not null, | |||
instance_name varchar(80) not null, | |||
last_checkin_time numeric(13) not null, | |||
checkin_interval numeric(13) not null, | |||
primary key (sched_name,instance_name) | |||
); | |||
create table qrtz_locks | |||
( | |||
sched_name varchar(120) not null, | |||
lock_name varchar(40) not null, | |||
primary key (sched_name,lock_name) | |||
); | |||
commit work; |
@@ -0,0 +1,349 @@ | |||
--# thanks to George Papastamatopoulos for submitting this ... and Marko Lahma for | |||
--# updating it. | |||
--# | |||
--# In your Quartz properties file, you'll need to set | |||
--# org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.MSSQLDelegate | |||
--# | |||
--# you shouse enter your DB instance's name on the next line in place of "enter_db_name_here" | |||
--# | |||
--# | |||
--# From a helpful (but anonymous) Quartz user: | |||
--# | |||
--# Regarding this error message: | |||
--# | |||
--# [Microsoft][SQLServer 2000 Driver for JDBC]Can't start a cloned connection while in manual transaction mode. | |||
--# | |||
--# | |||
--# I added "SelectMethod=cursor;" to my Connection URL in the config file. | |||
--# It Seems to work, hopefully no side effects. | |||
--# | |||
--# example: | |||
--# "jdbc:microsoft:sqlserver://dbmachine:1433;SelectMethod=cursor"; | |||
--# | |||
--# Another user has pointed out that you will probably need to use the | |||
--# JTDS driver | |||
--# | |||
USE [enter_db_name_here] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[FK_QRTZ_TRIGGERS_QRTZ_JOB_DETAILS]') AND OBJECTPROPERTY(id, N'ISFOREIGNKEY') = 1) | |||
ALTER TABLE [dbo].[QRTZ_TRIGGERS] DROP CONSTRAINT FK_QRTZ_TRIGGERS_QRTZ_JOB_DETAILS | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[FK_QRTZ_CRON_TRIGGERS_QRTZ_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISFOREIGNKEY') = 1) | |||
ALTER TABLE [dbo].[QRTZ_CRON_TRIGGERS] DROP CONSTRAINT FK_QRTZ_CRON_TRIGGERS_QRTZ_TRIGGERS | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[FK_QRTZ_SIMPLE_TRIGGERS_QRTZ_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISFOREIGNKEY') = 1) | |||
ALTER TABLE [dbo].[QRTZ_SIMPLE_TRIGGERS] DROP CONSTRAINT FK_QRTZ_SIMPLE_TRIGGERS_QRTZ_TRIGGERS | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[FK_QRTZ_SIMPROP_TRIGGERS_QRTZ_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISFOREIGNKEY') = 1) | |||
ALTER TABLE [dbo].[QRTZ_SIMPROP_TRIGGERS] DROP CONSTRAINT FK_QRTZ_SIMPROP_TRIGGERS_QRTZ_TRIGGERS | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_CALENDARS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_CALENDARS] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_CRON_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_CRON_TRIGGERS] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_BLOB_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_BLOB_TRIGGERS] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_FIRED_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_FIRED_TRIGGERS] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_PAUSED_TRIGGER_GRPS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_PAUSED_TRIGGER_GRPS] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_SCHEDULER_STATE]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_SCHEDULER_STATE] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_LOCKS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_LOCKS] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_JOB_DETAILS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_JOB_DETAILS] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_SIMPLE_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_SIMPLE_TRIGGERS] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_SIMPROP_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_SIMPROP_TRIGGERS] | |||
GO | |||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[QRTZ_TRIGGERS]') AND OBJECTPROPERTY(id, N'ISUSERTABLE') = 1) | |||
DROP TABLE [dbo].[QRTZ_TRIGGERS] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_CALENDARS] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[CALENDAR_NAME] [VARCHAR] (200) NOT NULL , | |||
[CALENDAR] [IMAGE] NOT NULL | |||
) ON [PRIMARY] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_CRON_TRIGGERS] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[TRIGGER_NAME] [VARCHAR] (200) NOT NULL , | |||
[TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , | |||
[CRON_EXPRESSION] [VARCHAR] (120) NOT NULL , | |||
[TIME_ZONE_ID] [VARCHAR] (80) | |||
) ON [PRIMARY] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_FIRED_TRIGGERS] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[ENTRY_ID] [VARCHAR] (95) NOT NULL , | |||
[TRIGGER_NAME] [VARCHAR] (200) NOT NULL , | |||
[TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , | |||
[INSTANCE_NAME] [VARCHAR] (200) NOT NULL , | |||
[FIRED_TIME] [BIGINT] NOT NULL , | |||
[SCHED_TIME] [BIGINT] NOT NULL , | |||
[PRIORITY] [INTEGER] NOT NULL , | |||
[STATE] [VARCHAR] (16) NOT NULL, | |||
[JOB_NAME] [VARCHAR] (200) NULL , | |||
[JOB_GROUP] [VARCHAR] (200) NULL , | |||
[IS_NONCONCURRENT] [VARCHAR] (1) NULL , | |||
[REQUESTS_RECOVERY] [VARCHAR] (1) NULL | |||
) ON [PRIMARY] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_PAUSED_TRIGGER_GRPS] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[TRIGGER_GROUP] [VARCHAR] (200) NOT NULL | |||
) ON [PRIMARY] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_SCHEDULER_STATE] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[INSTANCE_NAME] [VARCHAR] (200) NOT NULL , | |||
[LAST_CHECKIN_TIME] [BIGINT] NOT NULL , | |||
[CHECKIN_INTERVAL] [BIGINT] NOT NULL | |||
) ON [PRIMARY] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_LOCKS] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[LOCK_NAME] [VARCHAR] (40) NOT NULL | |||
) ON [PRIMARY] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_JOB_DETAILS] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[JOB_NAME] [VARCHAR] (200) NOT NULL , | |||
[JOB_GROUP] [VARCHAR] (200) NOT NULL , | |||
[DESCRIPTION] [VARCHAR] (250) NULL , | |||
[JOB_CLASS_NAME] [VARCHAR] (250) NOT NULL , | |||
[IS_DURABLE] [VARCHAR] (1) NOT NULL , | |||
[IS_NONCONCURRENT] [VARCHAR] (1) NOT NULL , | |||
[IS_UPDATE_DATA] [VARCHAR] (1) NOT NULL , | |||
[REQUESTS_RECOVERY] [VARCHAR] (1) NOT NULL , | |||
[JOB_DATA] [IMAGE] NULL | |||
) ON [PRIMARY] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_SIMPLE_TRIGGERS] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[TRIGGER_NAME] [VARCHAR] (200) NOT NULL , | |||
[TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , | |||
[REPEAT_COUNT] [BIGINT] NOT NULL , | |||
[REPEAT_INTERVAL] [BIGINT] NOT NULL , | |||
[TIMES_TRIGGERED] [BIGINT] NOT NULL | |||
) ON [PRIMARY] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_SIMPROP_TRIGGERS] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[TRIGGER_NAME] [VARCHAR] (200) NOT NULL , | |||
[TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , | |||
[STR_PROP_1] [VARCHAR] (512) NULL, | |||
[STR_PROP_2] [VARCHAR] (512) NULL, | |||
[STR_PROP_3] [VARCHAR] (512) NULL, | |||
[INT_PROP_1] [INT] NULL, | |||
[INT_PROP_2] [INT] NULL, | |||
[LONG_PROP_1] [BIGINT] NULL, | |||
[LONG_PROP_2] [BIGINT] NULL, | |||
[DEC_PROP_1] [NUMERIC] (13,4) NULL, | |||
[DEC_PROP_2] [NUMERIC] (13,4) NULL, | |||
[BOOL_PROP_1] [VARCHAR] (1) NULL, | |||
[BOOL_PROP_2] [VARCHAR] (1) NULL, | |||
) ON [PRIMARY] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_BLOB_TRIGGERS] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[TRIGGER_NAME] [VARCHAR] (200) NOT NULL , | |||
[TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , | |||
[BLOB_DATA] [IMAGE] NULL | |||
) ON [PRIMARY] | |||
GO | |||
CREATE TABLE [dbo].[QRTZ_TRIGGERS] ( | |||
[SCHED_NAME] [VARCHAR] (120) NOT NULL , | |||
[TRIGGER_NAME] [VARCHAR] (200) NOT NULL , | |||
[TRIGGER_GROUP] [VARCHAR] (200) NOT NULL , | |||
[JOB_NAME] [VARCHAR] (200) NOT NULL , | |||
[JOB_GROUP] [VARCHAR] (200) NOT NULL , | |||
[DESCRIPTION] [VARCHAR] (250) NULL , | |||
[NEXT_FIRE_TIME] [BIGINT] NULL , | |||
[PREV_FIRE_TIME] [BIGINT] NULL , | |||
[PRIORITY] [INTEGER] NULL , | |||
[TRIGGER_STATE] [VARCHAR] (16) NOT NULL , | |||
[TRIGGER_TYPE] [VARCHAR] (8) NOT NULL , | |||
[START_TIME] [BIGINT] NOT NULL , | |||
[END_TIME] [BIGINT] NULL , | |||
[CALENDAR_NAME] [VARCHAR] (200) NULL , | |||
[MISFIRE_INSTR] [SMALLINT] NULL , | |||
[JOB_DATA] [IMAGE] NULL | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_CALENDARS] WITH NOCHECK ADD | |||
CONSTRAINT [PK_QRTZ_CALENDARS] PRIMARY KEY CLUSTERED | |||
( | |||
[SCHED_NAME], | |||
[CALENDAR_NAME] | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_CRON_TRIGGERS] WITH NOCHECK ADD | |||
CONSTRAINT [PK_QRTZ_CRON_TRIGGERS] PRIMARY KEY CLUSTERED | |||
( | |||
[SCHED_NAME], | |||
[TRIGGER_NAME], | |||
[TRIGGER_GROUP] | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_FIRED_TRIGGERS] WITH NOCHECK ADD | |||
CONSTRAINT [PK_QRTZ_FIRED_TRIGGERS] PRIMARY KEY CLUSTERED | |||
( | |||
[SCHED_NAME], | |||
[ENTRY_ID] | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_PAUSED_TRIGGER_GRPS] WITH NOCHECK ADD | |||
CONSTRAINT [PK_QRTZ_PAUSED_TRIGGER_GRPS] PRIMARY KEY CLUSTERED | |||
( | |||
[SCHED_NAME], | |||
[TRIGGER_GROUP] | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_SCHEDULER_STATE] WITH NOCHECK ADD | |||
CONSTRAINT [PK_QRTZ_SCHEDULER_STATE] PRIMARY KEY CLUSTERED | |||
( | |||
[SCHED_NAME], | |||
[INSTANCE_NAME] | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_LOCKS] WITH NOCHECK ADD | |||
CONSTRAINT [PK_QRTZ_LOCKS] PRIMARY KEY CLUSTERED | |||
( | |||
[SCHED_NAME], | |||
[LOCK_NAME] | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_JOB_DETAILS] WITH NOCHECK ADD | |||
CONSTRAINT [PK_QRTZ_JOB_DETAILS] PRIMARY KEY CLUSTERED | |||
( | |||
[SCHED_NAME], | |||
[JOB_NAME], | |||
[JOB_GROUP] | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_SIMPLE_TRIGGERS] WITH NOCHECK ADD | |||
CONSTRAINT [PK_QRTZ_SIMPLE_TRIGGERS] PRIMARY KEY CLUSTERED | |||
( | |||
[SCHED_NAME], | |||
[TRIGGER_NAME], | |||
[TRIGGER_GROUP] | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_SIMPROP_TRIGGERS] WITH NOCHECK ADD | |||
CONSTRAINT [PK_QRTZ_SIMPROP_TRIGGERS] PRIMARY KEY CLUSTERED | |||
( | |||
[SCHED_NAME], | |||
[TRIGGER_NAME], | |||
[TRIGGER_GROUP] | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_TRIGGERS] WITH NOCHECK ADD | |||
CONSTRAINT [PK_QRTZ_TRIGGERS] PRIMARY KEY CLUSTERED | |||
( | |||
[SCHED_NAME], | |||
[TRIGGER_NAME], | |||
[TRIGGER_GROUP] | |||
) ON [PRIMARY] | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_CRON_TRIGGERS] ADD | |||
CONSTRAINT [FK_QRTZ_CRON_TRIGGERS_QRTZ_TRIGGERS] FOREIGN KEY | |||
( | |||
[SCHED_NAME], | |||
[TRIGGER_NAME], | |||
[TRIGGER_GROUP] | |||
) REFERENCES [dbo].[QRTZ_TRIGGERS] ( | |||
[SCHED_NAME], | |||
[TRIGGER_NAME], | |||
[TRIGGER_GROUP] | |||
) ON DELETE CASCADE | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_SIMPLE_TRIGGERS] ADD | |||
CONSTRAINT [FK_QRTZ_SIMPLE_TRIGGERS_QRTZ_TRIGGERS] FOREIGN KEY | |||
( | |||
[SCHED_NAME], | |||
[TRIGGER_NAME], | |||
[TRIGGER_GROUP] | |||
) REFERENCES [dbo].[QRTZ_TRIGGERS] ( | |||
[SCHED_NAME], | |||
[TRIGGER_NAME], | |||
[TRIGGER_GROUP] | |||
) ON DELETE CASCADE | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_SIMPROP_TRIGGERS] ADD | |||
CONSTRAINT [FK_QRTZ_SIMPROP_TRIGGERS_QRTZ_TRIGGERS] FOREIGN KEY | |||
( | |||
[SCHED_NAME], | |||
[TRIGGER_NAME], | |||
[TRIGGER_GROUP] | |||
) REFERENCES [dbo].[QRTZ_TRIGGERS] ( | |||
[SCHED_NAME], | |||
[TRIGGER_NAME], | |||
[TRIGGER_GROUP] | |||
) ON DELETE CASCADE | |||
GO | |||
ALTER TABLE [dbo].[QRTZ_TRIGGERS] ADD | |||
CONSTRAINT [FK_QRTZ_TRIGGERS_QRTZ_JOB_DETAILS] FOREIGN KEY | |||
( | |||
[SCHED_NAME], | |||
[JOB_NAME], | |||
[JOB_GROUP] | |||
) REFERENCES [dbo].[QRTZ_JOB_DETAILS] ( | |||
[SCHED_NAME], | |||
[JOB_NAME], | |||
[JOB_GROUP] | |||
) | |||
GO | |||
@@ -0,0 +1,313 @@ | |||
/*==============================================================================================*/ | |||
/* Quartz database tables creation script for Sybase ASE 12.5 */ | |||
/* Written by Pertti Laiho (email: pertti.laiho@deio.net), 9th May 2003 */ | |||
/* */ | |||
/* Compatible with Quartz version 1.1.2 */ | |||
/* */ | |||
/* Sybase ASE works ok with the SybaseDelegate delegate class. That means in your Quartz properties */ | |||
/* file, you'll need to set: */ | |||
/* org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.SybaseDelegate */ | |||
/*==============================================================================================*/ | |||
use your_db_name_here | |||
go | |||
/*==============================================================================*/ | |||
/* Clear all tables: */ | |||
/*==============================================================================*/ | |||
IF OBJECT_ID('QRTZ_FIRED_TRIGGERS') IS NOT NULL | |||
delete from QRTZ_FIRED_TRIGGERS | |||
go | |||
IF OBJECT_ID('QRTZ_PAUSED_TRIGGER_GRPS') IS NOT NULL | |||
delete from QRTZ_PAUSED_TRIGGER_GRPS | |||
go | |||
IF OBJECT_ID('QRTZ_SCHEDULER_STATE') IS NOT NULL | |||
delete from QRTZ_SCHEDULER_STATE | |||
go | |||
IF OBJECT_ID('QRTZ_LOCKS') IS NOT NULL | |||
delete from QRTZ_LOCKS | |||
go | |||
IF OBJECT_ID('QRTZ_SIMPLE_TRIGGERS') IS NOT NULL | |||
delete from QRTZ_SIMPLE_TRIGGERS | |||
go | |||
IF OBJECT_ID('QRTZ_SIMPROP_TRIGGERS') IS NOT NULL | |||
delete from QRTZ_SIMPROP_TRIGGERS | |||
go | |||
IF OBJECT_ID('QRTZ_CRON_TRIGGERS') IS NOT NULL | |||
delete from QRTZ_CRON_TRIGGERS | |||
go | |||
IF OBJECT_ID('QRTZ_BLOB_TRIGGERS') IS NOT NULL | |||
delete from QRTZ_BLOB_TRIGGERS | |||
go | |||
IF OBJECT_ID('QRTZ_TRIGGERS') IS NOT NULL | |||
delete from QRTZ_TRIGGERS | |||
go | |||
IF OBJECT_ID('QRTZ_JOB_DETAILS') IS NOT NULL | |||
delete from QRTZ_JOB_DETAILS | |||
go | |||
IF OBJECT_ID('QRTZ_CALENDARS') IS NOT NULL | |||
delete from QRTZ_CALENDARS | |||
go | |||
/*==============================================================================*/ | |||
/* Drop constraints: */ | |||
/*==============================================================================*/ | |||
alter table QRTZ_TRIGGERS | |||
drop constraint FK_triggers_job_details | |||
go | |||
alter table QRTZ_CRON_TRIGGERS | |||
drop constraint FK_cron_triggers_triggers | |||
go | |||
alter table QRTZ_SIMPLE_TRIGGERS | |||
drop constraint FK_simple_triggers_triggers | |||
go | |||
alter table QRTZ_SIMPROP_TRIGGERS | |||
drop constraint FK_simprop_triggers_triggers | |||
go | |||
alter table QRTZ_BLOB_TRIGGERS | |||
drop constraint FK_blob_triggers_triggers | |||
go | |||
/*==============================================================================*/ | |||
/* Drop tables: */ | |||
/*==============================================================================*/ | |||
drop table QRTZ_FIRED_TRIGGERS | |||
go | |||
drop table QRTZ_PAUSED_TRIGGER_GRPS | |||
go | |||
drop table QRTZ_SCHEDULER_STATE | |||
go | |||
drop table QRTZ_LOCKS | |||
go | |||
drop table QRTZ_SIMPLE_TRIGGERS | |||
go | |||
drop table QRTZ_SIMPROP_TRIGGERS | |||
go | |||
drop table QRTZ_CRON_TRIGGERS | |||
go | |||
drop table QRTZ_BLOB_TRIGGERS | |||
go | |||
drop table QRTZ_TRIGGERS | |||
go | |||
drop table QRTZ_JOB_DETAILS | |||
go | |||
drop table QRTZ_CALENDARS | |||
go | |||
/*==============================================================================*/ | |||
/* Create tables: */ | |||
/*==============================================================================*/ | |||
create table QRTZ_CALENDARS ( | |||
SCHED_NAME varchar(120) not null, | |||
CALENDAR_NAME varchar(80) not null, | |||
CALENDAR image not null | |||
) | |||
go | |||
create table QRTZ_CRON_TRIGGERS ( | |||
SCHED_NAME varchar(120) not null, | |||
TRIGGER_NAME varchar(80) not null, | |||
TRIGGER_GROUP varchar(80) not null, | |||
CRON_EXPRESSION varchar(120) not null, | |||
TIME_ZONE_ID varchar(80) null, | |||
) | |||
go | |||
create table QRTZ_PAUSED_TRIGGER_GRPS ( | |||
SCHED_NAME varchar(120) not null, | |||
TRIGGER_GROUP varchar(80) not null, | |||
) | |||
go | |||
create table QRTZ_FIRED_TRIGGERS( | |||
SCHED_NAME varchar(120) not null, | |||
ENTRY_ID varchar(95) not null, | |||
TRIGGER_NAME varchar(80) not null, | |||
TRIGGER_GROUP varchar(80) not null, | |||
INSTANCE_NAME varchar(80) not null, | |||
FIRED_TIME numeric(13,0) not null, | |||
SCHED_TIME numeric(13,0) not null, | |||
PRIORITY int not null, | |||
STATE varchar(16) not null, | |||
JOB_NAME varchar(80) null, | |||
JOB_GROUP varchar(80) null, | |||
IS_NONCONCURRENT bit not null, | |||
REQUESTS_RECOVERY bit not null, | |||
) | |||
go | |||
create table QRTZ_SCHEDULER_STATE ( | |||
SCHED_NAME varchar(120) not null, | |||
INSTANCE_NAME varchar(80) not null, | |||
LAST_CHECKIN_TIME numeric(13,0) not null, | |||
CHECKIN_INTERVAL numeric(13,0) not null, | |||
) | |||
go | |||
create table QRTZ_LOCKS ( | |||
SCHED_NAME varchar(120) not null, | |||
LOCK_NAME varchar(40) not null, | |||
) | |||
go | |||
create table QRTZ_JOB_DETAILS ( | |||
SCHED_NAME varchar(120) not null, | |||
JOB_NAME varchar(80) not null, | |||
JOB_GROUP varchar(80) not null, | |||
DESCRIPTION varchar(120) null, | |||
JOB_CLASS_NAME varchar(128) not null, | |||
IS_DURABLE bit not null, | |||
IS_NONCONCURRENT bit not null, | |||
IS_UPDATE_DATA bit not null, | |||
REQUESTS_RECOVERY bit not null, | |||
JOB_DATA image null | |||
) | |||
go | |||
create table QRTZ_SIMPLE_TRIGGERS ( | |||
SCHED_NAME varchar(120) not null, | |||
TRIGGER_NAME varchar(80) not null, | |||
TRIGGER_GROUP varchar(80) not null, | |||
REPEAT_COUNT numeric(13,0) not null, | |||
REPEAT_INTERVAL numeric(13,0) not null, | |||
TIMES_TRIGGERED numeric(13,0) not null | |||
) | |||
go | |||
CREATE TABLE QRTZ_SIMPROP_TRIGGERS | |||
( | |||
SCHED_NAME VARCHAR(120) NOT NULL, | |||
TRIGGER_NAME VARCHAR(200) NOT NULL, | |||
TRIGGER_GROUP VARCHAR(200) NOT NULL, | |||
STR_PROP_1 VARCHAR(512) NULL, | |||
STR_PROP_2 VARCHAR(512) NULL, | |||
STR_PROP_3 VARCHAR(512) NULL, | |||
INT_PROP_1 INT NULL, | |||
INT_PROP_2 INT NULL, | |||
LONG_PROP_1 NUMERIC(13,0) NULL, | |||
LONG_PROP_2 NUMERIC(13,0) NULL, | |||
DEC_PROP_1 NUMERIC(13,4) NULL, | |||
DEC_PROP_2 NUMERIC(13,4) NULL, | |||
BOOL_PROP_1 bit NOT NULL, | |||
BOOL_PROP_2 bit NOT NULL | |||
) | |||
go | |||
create table QRTZ_BLOB_TRIGGERS ( | |||
SCHED_NAME varchar(120) not null, | |||
TRIGGER_NAME varchar(80) not null, | |||
TRIGGER_GROUP varchar(80) not null, | |||
BLOB_DATA image null | |||
) | |||
go | |||
create table QRTZ_TRIGGERS ( | |||
SCHED_NAME varchar(120) not null, | |||
TRIGGER_NAME varchar(80) not null, | |||
TRIGGER_GROUP varchar(80) not null, | |||
JOB_NAME varchar(80) not null, | |||
JOB_GROUP varchar(80) not null, | |||
DESCRIPTION varchar(120) null, | |||
NEXT_FIRE_TIME numeric(13,0) null, | |||
PREV_FIRE_TIME numeric(13,0) null, | |||
PRIORITY int null, | |||
TRIGGER_STATE varchar(16) not null, | |||
TRIGGER_TYPE varchar(8) not null, | |||
START_TIME numeric(13,0) not null, | |||
END_TIME numeric(13,0) null, | |||
CALENDAR_NAME varchar(80) null, | |||
MISFIRE_INSTR smallint null, | |||
JOB_DATA image null | |||
) | |||
go | |||
/*==============================================================================*/ | |||
/* Create primary key constraints: */ | |||
/*==============================================================================*/ | |||
alter table QRTZ_CALENDARS | |||
add constraint PK_qrtz_calendars primary key clustered (SCHED_NAME,CALENDAR_NAME) | |||
go | |||
alter table QRTZ_CRON_TRIGGERS | |||
add constraint PK_qrtz_cron_triggers primary key clustered (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP) | |||
go | |||
alter table QRTZ_FIRED_TRIGGERS | |||
add constraint PK_qrtz_fired_triggers primary key clustered (SCHED_NAME,ENTRY_ID) | |||
go | |||
alter table QRTZ_PAUSED_TRIGGER_GRPS | |||
add constraint PK_qrtz_paused_trigger_grps primary key clustered (SCHED_NAME,TRIGGER_GROUP) | |||
go | |||
alter table QRTZ_SCHEDULER_STATE | |||
add constraint PK_qrtz_scheduler_state primary key clustered (SCHED_NAME,INSTANCE_NAME) | |||
go | |||
alter table QRTZ_LOCKS | |||
add constraint PK_qrtz_locks primary key clustered (SCHED_NAME,LOCK_NAME) | |||
go | |||
alter table QRTZ_JOB_DETAILS | |||
add constraint PK_qrtz_job_details primary key clustered (SCHED_NAME,JOB_NAME, JOB_GROUP) | |||
go | |||
alter table QRTZ_SIMPLE_TRIGGERS | |||
add constraint PK_qrtz_simple_triggers primary key clustered (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP) | |||
go | |||
alter table QRTZ_SIMPROP_TRIGGERS | |||
add constraint PK_qrtz_simprop_triggers primary key clustered (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP) | |||
go | |||
alter table QRTZ_TRIGGERS | |||
add constraint PK_qrtz_triggers primary key clustered (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP) | |||
go | |||
alter table QRTZ_BLOB_TRIGGERS | |||
add constraint PK_qrtz_blob_triggers primary key clustered (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP) | |||
go | |||
/*==============================================================================*/ | |||
/* Create foreign key constraints: */ | |||
/*==============================================================================*/ | |||
alter table QRTZ_CRON_TRIGGERS | |||
add constraint FK_cron_triggers_triggers foreign key (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
references QRTZ_TRIGGERS (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
go | |||
alter table QRTZ_SIMPLE_TRIGGERS | |||
add constraint FK_simple_triggers_triggers foreign key (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
references QRTZ_TRIGGERS (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
go | |||
alter table QRTZ_SIMPROP_TRIGGERS | |||
add constraint FK_simprop_triggers_triggers foreign key (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
references QRTZ_TRIGGERS (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
go | |||
alter table QRTZ_TRIGGERS | |||
add constraint FK_triggers_job_details foreign key (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
references QRTZ_JOB_DETAILS (SCHED_NAME,JOB_NAME,JOB_GROUP) | |||
go | |||
alter table QRTZ_BLOB_TRIGGERS | |||
add constraint FK_blob_triggers_triggers foreign key (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
references QRTZ_TRIGGERS (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) | |||
go | |||
/*==============================================================================*/ | |||
/* End of script. */ | |||
/*==============================================================================*/ |
@@ -20,6 +20,8 @@ | |||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | |||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> | |||
<java.version>1.8</java.version> | |||
<mybatis.mapper.version>2.1.0</mybatis.mapper.version> | |||
<mybatis.pagehelper.version>1.2.10</mybatis.pagehelper.version> | |||
</properties> | |||
<dependencies> | |||
@@ -33,6 +35,18 @@ | |||
<artifactId>spring-boot-starter-quartz</artifactId> | |||
</dependency> | |||
<dependency> | |||
<groupId>tk.mybatis</groupId> | |||
<artifactId>mapper-spring-boot-starter</artifactId> | |||
<version>${mybatis.mapper.version}</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>com.github.pagehelper</groupId> | |||
<artifactId>pagehelper-spring-boot-starter</artifactId> | |||
<version>${mybatis.pagehelper.version}</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>mysql</groupId> | |||
<artifactId>mysql-connector-java</artifactId> | |||
@@ -44,6 +58,12 @@ | |||
<scope>test</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>com.mchange</groupId> | |||
<artifactId>c3p0</artifactId> | |||
<version>0.9.5.2</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>cn.hutool</groupId> | |||
<artifactId>hutool-all</artifactId> | |||
@@ -2,6 +2,7 @@ package com.xkcoding.task.quartz; | |||
import org.springframework.boot.SpringApplication; | |||
import org.springframework.boot.autoconfigure.SpringBootApplication; | |||
import tk.mybatis.spring.annotation.MapperScan; | |||
/** | |||
* <p> | |||
@@ -16,6 +17,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
@MapperScan(basePackages = {"com.xkcoding.task.quartz.mapper"}) | |||
@SpringBootApplication | |||
public class SpringBootDemoTaskQuartzApplication { | |||
@@ -0,0 +1,72 @@ | |||
package com.xkcoding.task.quartz.common; | |||
import lombok.Data; | |||
import org.springframework.http.HttpStatus; | |||
import java.io.Serializable; | |||
/** | |||
* <p> | |||
* 通用Api封装 | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.common | |||
* @description: 通用Api封装 | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 13:59 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
@Data | |||
public class ApiResponse implements Serializable { | |||
/** | |||
* 返回信息 | |||
*/ | |||
private String message; | |||
/** | |||
* 返回数据 | |||
*/ | |||
private Object data; | |||
public ApiResponse() { | |||
} | |||
private ApiResponse(String message, Object data) { | |||
this.message = message; | |||
this.data = data; | |||
} | |||
/** | |||
* 通用封装获取ApiResponse对象 | |||
* | |||
* @param message 返回信息 | |||
* @param data 返回数据 | |||
* @return ApiResponse | |||
*/ | |||
public static ApiResponse of(String message, Object data) { | |||
return new ApiResponse(message, data); | |||
} | |||
/** | |||
* 通用成功封装获取ApiResponse对象 | |||
* | |||
* @param data 返回数据 | |||
* @return ApiResponse | |||
*/ | |||
public static ApiResponse ok(Object data) { | |||
return new ApiResponse(HttpStatus.OK.getReasonPhrase(), data); | |||
} | |||
/** | |||
* 通用封装获取ApiResponse对象 | |||
* | |||
* @param message 返回信息 | |||
* @return ApiResponse | |||
*/ | |||
public static ApiResponse msg(String message) { | |||
return of(message, null); | |||
} | |||
} |
@@ -0,0 +1,123 @@ | |||
package com.xkcoding.task.quartz.controller; | |||
import cn.hutool.core.lang.Dict; | |||
import cn.hutool.core.util.ObjectUtil; | |||
import cn.hutool.core.util.StrUtil; | |||
import com.github.pagehelper.PageInfo; | |||
import com.xkcoding.task.quartz.common.ApiResponse; | |||
import com.xkcoding.task.quartz.entity.domain.JobAndTrigger; | |||
import com.xkcoding.task.quartz.entity.form.JobForm; | |||
import com.xkcoding.task.quartz.service.JobService; | |||
import lombok.extern.slf4j.Slf4j; | |||
import org.quartz.SchedulerException; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
import org.springframework.http.HttpStatus; | |||
import org.springframework.http.ResponseEntity; | |||
import org.springframework.web.bind.annotation.*; | |||
import javax.validation.Valid; | |||
/** | |||
* <p> | |||
* Job Controller | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.controller | |||
* @description: Job Controller | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 13:23 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
@RestController | |||
@RequestMapping("/job") | |||
@Slf4j | |||
public class JobController { | |||
private final JobService jobService; | |||
@Autowired | |||
public JobController(JobService jobService) { | |||
this.jobService = jobService; | |||
} | |||
/** | |||
* 保存定时任务 | |||
*/ | |||
@PostMapping | |||
public ResponseEntity<ApiResponse> addJob(@Valid JobForm form) { | |||
try { | |||
jobService.addJob(form); | |||
} catch (Exception e) { | |||
return new ResponseEntity<>(ApiResponse.msg(e.getMessage()), HttpStatus.INTERNAL_SERVER_ERROR); | |||
} | |||
return new ResponseEntity<>(ApiResponse.msg("操作成功"), HttpStatus.CREATED); | |||
} | |||
/** | |||
* 删除定时任务 | |||
*/ | |||
@DeleteMapping | |||
public ResponseEntity<ApiResponse> deleteJob(JobForm form) throws SchedulerException { | |||
if (StrUtil.hasBlank(form.getJobGroupName(), form.getJobClassName())) { | |||
return new ResponseEntity<>(ApiResponse.msg("参数不能为空"), HttpStatus.BAD_REQUEST); | |||
} | |||
jobService.deleteJob(form); | |||
return new ResponseEntity<>(ApiResponse.msg("删除成功"), HttpStatus.OK); | |||
} | |||
/** | |||
* 暂停定时任务 | |||
*/ | |||
@PutMapping(params = "pause") | |||
public ResponseEntity<ApiResponse> pauseJob(JobForm form) throws SchedulerException { | |||
if (StrUtil.hasBlank(form.getJobGroupName(), form.getJobClassName())) { | |||
return new ResponseEntity<>(ApiResponse.msg("参数不能为空"), HttpStatus.BAD_REQUEST); | |||
} | |||
jobService.pauseJob(form); | |||
return new ResponseEntity<>(ApiResponse.msg("暂停成功"), HttpStatus.OK); | |||
} | |||
/** | |||
* 恢复定时任务 | |||
*/ | |||
@PutMapping(params = "resume") | |||
public ResponseEntity<ApiResponse> resumeJob(JobForm form) throws SchedulerException { | |||
if (StrUtil.hasBlank(form.getJobGroupName(), form.getJobClassName())) { | |||
return new ResponseEntity<>(ApiResponse.msg("参数不能为空"), HttpStatus.BAD_REQUEST); | |||
} | |||
jobService.resumeJob(form); | |||
return new ResponseEntity<>(ApiResponse.msg("恢复成功"), HttpStatus.OK); | |||
} | |||
/** | |||
* 修改定时任务,定时时间 | |||
*/ | |||
@PutMapping(params = "cron") | |||
public ResponseEntity<ApiResponse> cronJob(@Valid JobForm form) { | |||
try { | |||
jobService.cronJob(form); | |||
} catch (Exception e) { | |||
return new ResponseEntity<>(ApiResponse.msg(e.getMessage()), HttpStatus.INTERNAL_SERVER_ERROR); | |||
} | |||
return new ResponseEntity<>(ApiResponse.msg("修改成功"), HttpStatus.OK); | |||
} | |||
@GetMapping | |||
public ResponseEntity<ApiResponse> jobList(Integer currentPage, Integer pageSize) { | |||
if (ObjectUtil.isNull(currentPage)) { | |||
currentPage = 1; | |||
} | |||
if (ObjectUtil.isNull(pageSize)) { | |||
pageSize = 10; | |||
} | |||
PageInfo<JobAndTrigger> all = jobService.list(currentPage, pageSize); | |||
return ResponseEntity.ok(ApiResponse.ok(Dict.create().set("total", all.getTotal()).set("data", all.getList()))); | |||
} | |||
} |
@@ -0,0 +1,62 @@ | |||
package com.xkcoding.task.quartz.entity.domain; | |||
import lombok.Data; | |||
import java.math.BigInteger; | |||
/** | |||
* <p> | |||
* 实体类 | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.entity.domain | |||
* @description: 实体类 | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 15:05 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
@Data | |||
public class JobAndTrigger { | |||
/** | |||
* 定时任务名称 | |||
*/ | |||
private String jobName; | |||
/** | |||
* 定时任务组 | |||
*/ | |||
private String jobGroup; | |||
/** | |||
* 定时任务全类名 | |||
*/ | |||
private String jobClassName; | |||
/** | |||
* 触发器名称 | |||
*/ | |||
private String triggerName; | |||
/** | |||
* 触发器组 | |||
*/ | |||
private String triggerGroup; | |||
/** | |||
* 重复间隔 | |||
*/ | |||
private BigInteger repeatInterval; | |||
/** | |||
* 触发次数 | |||
*/ | |||
private BigInteger timesTriggered; | |||
/** | |||
* cron 表达式 | |||
*/ | |||
private String cronExpression; | |||
/** | |||
* 时区 | |||
*/ | |||
private String timeZoneId; | |||
/** | |||
* 定时任务状态 | |||
*/ | |||
private String triggerState; | |||
} |
@@ -0,0 +1,39 @@ | |||
package com.xkcoding.task.quartz.entity.form; | |||
import lombok.Data; | |||
import lombok.experimental.Accessors; | |||
import javax.validation.constraints.NotBlank; | |||
/** | |||
* <p> | |||
* 定时任务详情 | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.entity.form | |||
* @description: 定时任务详情 | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 13:42 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
@Data | |||
@Accessors(chain = true) | |||
public class JobForm { | |||
/** | |||
* 定时任务全类名 | |||
*/ | |||
@NotBlank(message = "类名不能为空") | |||
private String jobClassName; | |||
/** | |||
* 任务组名 | |||
*/ | |||
@NotBlank(message = "任务组名不能为空") | |||
private String jobGroupName; | |||
/** | |||
* 定时任务cron表达式 | |||
*/ | |||
@NotBlank(message = "cron表达式不能为空") | |||
private String cronExpression; | |||
} |
@@ -0,0 +1,28 @@ | |||
package com.xkcoding.task.quartz.job; | |||
import cn.hutool.core.date.DateUtil; | |||
import com.xkcoding.task.quartz.job.base.BaseJob; | |||
import lombok.extern.slf4j.Slf4j; | |||
import org.quartz.JobExecutionContext; | |||
/** | |||
* <p> | |||
* Hello Job | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.job | |||
* @description: Hello Job | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 13:22 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
@Slf4j | |||
public class HelloJob implements BaseJob { | |||
@Override | |||
public void execute(JobExecutionContext context) { | |||
log.error("Hello Job 执行时间: {}", DateUtil.now()); | |||
} | |||
} |
@@ -0,0 +1,28 @@ | |||
package com.xkcoding.task.quartz.job; | |||
import cn.hutool.core.date.DateUtil; | |||
import com.xkcoding.task.quartz.job.base.BaseJob; | |||
import lombok.extern.slf4j.Slf4j; | |||
import org.quartz.JobExecutionContext; | |||
/** | |||
* <p> | |||
* Test Job | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.job | |||
* @description: Test Job | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 13:22 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
@Slf4j | |||
public class TestJob implements BaseJob { | |||
@Override | |||
public void execute(JobExecutionContext context) { | |||
log.error("Test Job 执行时间: {}", DateUtil.now()); | |||
} | |||
} |
@@ -0,0 +1,40 @@ | |||
package com.xkcoding.task.quartz.job.base; | |||
import org.quartz.*; | |||
/** | |||
* <p> | |||
* Job 基类,主要是在 {@link org.quartz.Job} 上再封装一层,只让我们自己项目里的Job去实现 | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.job.base | |||
* @description: Job 基类,主要是在 {@link org.quartz.Job} 上再封装一层,只让我们自己项目里的Job去实现 | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 13:27 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
public interface BaseJob extends Job { | |||
/** | |||
* <p> | |||
* Called by the <code>{@link Scheduler}</code> when a <code>{@link Trigger}</code> | |||
* fires that is associated with the <code>Job</code>. | |||
* </p> | |||
* | |||
* <p> | |||
* The implementation may wish to set a | |||
* {@link JobExecutionContext#setResult(Object) result} object on the | |||
* {@link JobExecutionContext} before this method exits. The result itself | |||
* is meaningless to Quartz, but may be informative to | |||
* <code>{@link JobListener}s</code> or | |||
* <code>{@link TriggerListener}s</code> that are watching the job's | |||
* execution. | |||
* </p> | |||
* | |||
* @param context 上下文 | |||
* @throws JobExecutionException if there is an exception while executing the job. | |||
*/ | |||
@Override | |||
void execute(JobExecutionContext context) throws JobExecutionException; | |||
} |
@@ -0,0 +1,29 @@ | |||
package com.xkcoding.task.quartz.mapper; | |||
import com.xkcoding.task.quartz.entity.domain.JobAndTrigger; | |||
import org.springframework.stereotype.Component; | |||
import java.util.List; | |||
/** | |||
* <p> | |||
* Job Mapper | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.mapper | |||
* @description: Job Mapper | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 15:12 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
@Component | |||
public interface JobMapper { | |||
/** | |||
* 查询定时作业和触发器列表 | |||
* | |||
* @return 定时作业和触发器列表 | |||
*/ | |||
List<JobAndTrigger> list(); | |||
} |
@@ -0,0 +1,71 @@ | |||
package com.xkcoding.task.quartz.service; | |||
import com.github.pagehelper.PageInfo; | |||
import com.xkcoding.task.quartz.entity.domain.JobAndTrigger; | |||
import com.xkcoding.task.quartz.entity.form.JobForm; | |||
import org.quartz.JobDetail; | |||
import org.quartz.SchedulerException; | |||
/** | |||
* <p> | |||
* Job Service | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.service | |||
* @description: Job Service | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 13:24 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
public interface JobService { | |||
/** | |||
* 添加并启动定时任务 | |||
* | |||
* @param form 表单参数 {@link JobForm} | |||
* @throws Exception 异常 | |||
*/ | |||
void addJob(JobForm form) throws Exception; | |||
/** | |||
* 删除定时任务 | |||
* | |||
* @param form 表单参数 {@link JobForm} | |||
* @throws SchedulerException 异常 | |||
*/ | |||
void deleteJob(JobForm form) throws SchedulerException; | |||
/** | |||
* 暂停定时任务 | |||
* | |||
* @param form 表单参数 {@link JobForm} | |||
* @throws SchedulerException 异常 | |||
*/ | |||
void pauseJob(JobForm form) throws SchedulerException; | |||
/** | |||
* 恢复定时任务 | |||
* | |||
* @param form 表单参数 {@link JobForm} | |||
* @throws SchedulerException 异常 | |||
*/ | |||
void resumeJob(JobForm form) throws SchedulerException; | |||
/** | |||
* 重新配置定时任务 | |||
* | |||
* @param form 表单参数 {@link JobForm} | |||
* @throws Exception 异常 | |||
*/ | |||
void cronJob(JobForm form) throws Exception; | |||
/** | |||
* 查询定时任务列表 | |||
* | |||
* @param currentPage 当前页 | |||
* @param pageSize 每页条数 | |||
* @return 定时任务列表 | |||
*/ | |||
PageInfo<JobAndTrigger> list(Integer currentPage, Integer pageSize); | |||
} |
@@ -0,0 +1,146 @@ | |||
package com.xkcoding.task.quartz.service.impl; | |||
import com.github.pagehelper.PageHelper; | |||
import com.github.pagehelper.PageInfo; | |||
import com.xkcoding.task.quartz.entity.domain.JobAndTrigger; | |||
import com.xkcoding.task.quartz.entity.form.JobForm; | |||
import com.xkcoding.task.quartz.mapper.JobMapper; | |||
import com.xkcoding.task.quartz.service.JobService; | |||
import com.xkcoding.task.quartz.util.JobUtil; | |||
import lombok.extern.slf4j.Slf4j; | |||
import org.quartz.*; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
import org.springframework.stereotype.Service; | |||
import java.util.List; | |||
/** | |||
* <p> | |||
* Job Service | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.service.impl | |||
* @description: Job Service | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 13:25 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
@Service | |||
@Slf4j | |||
public class JobServiceImpl implements JobService { | |||
private final Scheduler scheduler; | |||
private final JobMapper jobMapper; | |||
@Autowired | |||
public JobServiceImpl(Scheduler scheduler, JobMapper jobMapper) { | |||
this.scheduler = scheduler; | |||
this.jobMapper = jobMapper; | |||
} | |||
/** | |||
* 添加并启动定时任务 | |||
* | |||
* @param form 表单参数 {@link JobForm} | |||
* @return {@link JobDetail} | |||
* @throws Exception 异常 | |||
*/ | |||
@Override | |||
public void addJob(JobForm form) throws Exception { | |||
// 启动调度器 | |||
scheduler.start(); | |||
// 构建Job信息 | |||
JobDetail jobDetail = JobBuilder.newJob(JobUtil.getClass(form.getJobClassName()).getClass()).withIdentity(form.getJobClassName(), form.getJobGroupName()).build(); | |||
// Cron表达式调度构建器(即任务执行的时间) | |||
CronScheduleBuilder cron = CronScheduleBuilder.cronSchedule(form.getCronExpression()); | |||
//根据Cron表达式构建一个Trigger | |||
CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity(form.getJobClassName(), form.getJobGroupName()).withSchedule(cron).build(); | |||
try { | |||
scheduler.scheduleJob(jobDetail, trigger); | |||
} catch (SchedulerException e) { | |||
log.error("【定时任务】创建失败!", e); | |||
throw new Exception("【定时任务】创建失败!"); | |||
} | |||
} | |||
/** | |||
* 删除定时任务 | |||
* | |||
* @param form 表单参数 {@link JobForm} | |||
* @throws SchedulerException 异常 | |||
*/ | |||
@Override | |||
public void deleteJob(JobForm form) throws SchedulerException { | |||
scheduler.pauseTrigger(TriggerKey.triggerKey(form.getJobClassName(), form.getJobGroupName())); | |||
scheduler.unscheduleJob(TriggerKey.triggerKey(form.getJobClassName(), form.getJobGroupName())); | |||
scheduler.deleteJob(JobKey.jobKey(form.getJobClassName(), form.getJobGroupName())); | |||
} | |||
/** | |||
* 暂停定时任务 | |||
* | |||
* @param form 表单参数 {@link JobForm} | |||
* @throws SchedulerException 异常 | |||
*/ | |||
@Override | |||
public void pauseJob(JobForm form) throws SchedulerException { | |||
scheduler.pauseJob(JobKey.jobKey(form.getJobClassName(), form.getJobGroupName())); | |||
} | |||
/** | |||
* 恢复定时任务 | |||
* | |||
* @param form 表单参数 {@link JobForm} | |||
* @throws SchedulerException 异常 | |||
*/ | |||
@Override | |||
public void resumeJob(JobForm form) throws SchedulerException { | |||
scheduler.resumeJob(JobKey.jobKey(form.getJobClassName(), form.getJobGroupName())); | |||
} | |||
/** | |||
* 重新配置定时任务 | |||
* | |||
* @param form 表单参数 {@link JobForm} | |||
* @throws Exception 异常 | |||
*/ | |||
@Override | |||
public void cronJob(JobForm form) throws Exception { | |||
try { | |||
TriggerKey triggerKey = TriggerKey.triggerKey(form.getJobClassName(), form.getJobGroupName()); | |||
// 表达式调度构建器 | |||
CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule(form.getCronExpression()); | |||
CronTrigger trigger = (CronTrigger) scheduler.getTrigger(triggerKey); | |||
// 根据Cron表达式构建一个Trigger | |||
trigger = trigger.getTriggerBuilder().withIdentity(triggerKey).withSchedule(scheduleBuilder).build(); | |||
// 按新的trigger重新设置job执行 | |||
scheduler.rescheduleJob(triggerKey, trigger); | |||
} catch (SchedulerException e) { | |||
log.error("【定时任务】更新失败!", e); | |||
throw new Exception("【定时任务】创建失败!"); | |||
} | |||
} | |||
/** | |||
* 查询定时任务列表 | |||
* | |||
* @param currentPage 当前页 | |||
* @param pageSize 每页条数 | |||
* @return 定时任务列表 | |||
*/ | |||
@Override | |||
public PageInfo<JobAndTrigger> list(Integer currentPage, Integer pageSize) { | |||
PageHelper.startPage(currentPage, pageSize); | |||
List<JobAndTrigger> list = jobMapper.list(); | |||
return new PageInfo<>(list); | |||
} | |||
} |
@@ -0,0 +1,30 @@ | |||
package com.xkcoding.task.quartz.util; | |||
import com.xkcoding.task.quartz.job.base.BaseJob; | |||
/** | |||
* <p> | |||
* 定时任务反射工具类 | |||
* </p> | |||
* | |||
* @package: com.xkcoding.task.quartz.util | |||
* @description: 定时任务反射工具类 | |||
* @author: yangkai.shen | |||
* @date: Created in 2018-11-26 13:33 | |||
* @copyright: Copyright (c) 2018 | |||
* @version: V1.0 | |||
* @modified: yangkai.shen | |||
*/ | |||
public class JobUtil { | |||
/** | |||
* 根据全类名获取Job实例 | |||
* | |||
* @param classname Job全类名 | |||
* @return {@link BaseJob} 实例 | |||
* @throws Exception 泛型获取异常 | |||
*/ | |||
public static BaseJob getClass(String classname) throws Exception { | |||
Class<?> clazz = Class.forName(classname); | |||
return (BaseJob) clazz.newInstance(); | |||
} | |||
} |
@@ -0,0 +1,56 @@ | |||
server: | |||
port: 8080 | |||
servlet: | |||
context-path: /demo | |||
spring: | |||
datasource: | |||
url: jdbc:mysql://127.0.0.1:3306/spring-boot-demo?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&failOverReadOnly=false&serverTimezone=GMT%2B8 | |||
username: root | |||
password: root | |||
driver-class-name: com.mysql.cj.jdbc.Driver | |||
type: com.zaxxer.hikari.HikariDataSource | |||
hikari: | |||
minimum-idle: 5 | |||
connection-test-query: SELECT 1 FROM DUAL | |||
maximum-pool-size: 20 | |||
auto-commit: true | |||
idle-timeout: 30000 | |||
pool-name: SpringBootDemoHikariCP | |||
max-lifetime: 60000 | |||
connection-timeout: 30000 | |||
quartz: | |||
# 参见 org.springframework.boot.autoconfigure.quartz.QuartzProperties | |||
job-store-type: jdbc | |||
wait-for-jobs-to-complete-on-shutdown: true | |||
scheduler-name: SpringBootDemoScheduler | |||
properties: | |||
org.quartz.threadPool.threadCount: 5 | |||
org.quartz.threadPool.threadPriority: 5 | |||
org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread: true | |||
org.quartz.jobStore.misfireThreshold: 5000 | |||
org.quartz.jobStore.class: org.quartz.impl.jdbcjobstore.JobStoreTX | |||
org.quartz.jobStore.driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate | |||
logging: | |||
level: | |||
com.xkcoding: debug | |||
com.xkcoding.task.quartz.mapper: trace | |||
mybatis: | |||
configuration: | |||
# 下划线转驼峰 | |||
map-underscore-to-camel-case: true | |||
mapper-locations: classpath:mappers/*.xml | |||
type-aliases-package: com.xkcoding.task.quartz.entity | |||
mapper: | |||
mappers: | |||
- tk.mybatis.mapper.common.Mapper | |||
not-empty: true | |||
style: camelhump | |||
wrap-keyword: "`{0}`" | |||
safe-delete: true | |||
safe-update: true | |||
identity: MYSQL | |||
pagehelper: | |||
auto-dialect: true | |||
helper-dialect: mysql | |||
reasonable: true | |||
params: count=countSql |
@@ -0,0 +1,23 @@ | |||
<?xml version="1.0" encoding="UTF-8"?> | |||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||
<mapper namespace="com.xkcoding.task.quartz.mapper.JobMapper"> | |||
<select id="list" resultType="com.xkcoding.task.quartz.entity.domain.JobAndTrigger"> | |||
SELECT | |||
qrtz_job_details.JOB_NAME AS jobName, | |||
qrtz_job_details.JOB_GROUP AS jobGroup, | |||
qrtz_job_details.JOB_CLASS_NAME AS jobClassName, | |||
qrtz_triggers.TRIGGER_NAME AS triggerName, | |||
qrtz_triggers.TRIGGER_GROUP AS triggerGroup, | |||
qrtz_triggers.TRIGGER_STATE AS triggerState, | |||
qrtz_cron_triggers.CRON_EXPRESSION AS cronExpression, | |||
qrtz_cron_triggers.TIME_ZONE_ID AS timeZoneId | |||
FROM | |||
qrtz_job_details | |||
JOIN qrtz_triggers | |||
JOIN qrtz_cron_triggers | |||
ON qrtz_job_details.JOB_NAME = qrtz_triggers.JOB_NAME | |||
AND qrtz_triggers.TRIGGER_NAME = qrtz_cron_triggers.TRIGGER_NAME | |||
AND qrtz_triggers.TRIGGER_GROUP = qrtz_cron_triggers.TRIGGER_GROUP | |||
</select> | |||
</mapper> |