xxl-job-2.4.0 适配postgresql
库表初始化脚本适配postgres 脚本已提供下载
突然发现csdn的文件下载要氪金,我在这儿放个度盘
链接:https://pan.baidu.com/s/1w9t8Z1EoSk3nbfdSKYgRsg
提取码:emqp
- 如果你不是2.4.0,要对比两个版本库表是否一致,然后再使用初始化脚本,否则可能会导致任务无法正常运行等bug
- 若要自行修改库表来适配,可参考以下几点,大概花费1~2h
- 注释的语法修改,直接
comment
改成comment on
语句 - 索引创建语句修改 直接
key()
改成create index
语句 - 自增
AUTO_INCREMENT
改为使用序列seq
语句
- 注释的语法修改,直接
修改mapper层代码
摘自
到 mybatis-mapper 文件夹下,修改各个 Mapper 文件,使其适配 Postgre 语法,主要有三个地方:
- 去掉转义符 ` ,直接用空格替换
- 修改
LIMIT #{offset}, #{pagesize}
为LIMIT #{pagesize} OFFSET #{offset}
,涉及到查询的地方都需要调整 - 时间函数,如:
XxlJobRegistryMapper.xm
l 文件中findAll
和findDead
查询语句,DATE_ADD(#{nowTime},INTERVAL -#{timeout} SECOND)
修改为((select NOW())-INTERVAL '${timeout} S')
。 - 这一点是我补充的。mysql有
!
直接取反,postgres里把感叹号改成not
,在XxlJobLogMapper.xml
里where !(....