我正在使用Quartz来安排作业,使用JDBC Job Store。大多数工作都在每秒钟运行。
打开Oracle数据库的存档日志后,我发现Quartz在每次火灾后都会更新相关表格,包括:
由于大多数作业每秒都在运行,因此Quartz会轰炸存档日志。它每天消耗6 GB的磁盘空间!
有没有办法设置Quartz的行为,而不是在每次火灾后更新/删除表?
答案 0 :(得分:0)
您可以将QRTZ_TRIGGERS和QRTZ_FIRED_TRIGGERS设置为NOLOGGING。
ALTER TABLE QRTZ_TRIGGERS NOLOGGING;
ALTER TABLE QRTZ_FIRED_TRIGGERS NOLOGGING;
另一种解决方案是每隔几秒钟不运行一次作业。在你的情况下,持续的非垂死工作可能会更好。