我们使用 Quartz 2.1.6 在集群上进行作业调度,并将作业数据存储在 MySQL 数据库 (MySQL 5.1) 的 JDBC 作业存储中。
我们所有的 Quartz 配置(调度程序、作业、触发器)都是在启动时通过 Spring 完成的。我们将数据存储在数据库中以用于集群目的。
问题:我们在 Quartz 配置中添加并删除了几个作业。它们不再在配置中,但它们仍然存在于表中。我们如何摆脱它们?阅读 Quartz 文档,似乎对表格进行手动编辑是一件非常糟糕的事情。
我们似乎没有明确设置 JobDetail.setDurability(true),所以我不确定为什么这些作业和触发器会一直存在,但它们确实存在。
有人知道吗?
最佳答案
是的,除非您非常清楚自己在做什么,否则在数据库中执行此操作并不是最好的主意。因此,尝试以编程方式进行:
ISchedulerFactory factory = new StdSchedulerFactory();
IScheduler schedulder = factory.GetScheduler();
schedulder.DeleteJob(JobName, JobGroup);
关于java - 数据库表中的 Quartz 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16158423/