database compatibility assessment

ORACLE DBMS_JOB 定时作业调用(过程体内) 迁移 gaussdb 505 A 模式 怎么改

迁衡基于规则 ora.pkg.dbms_job, ora.pkg.dbms_scheduler, ora.plsql.dbms_scheduler 分析 ORACLE DBMS_JOB 定时作业调用(过程体内) 到 gaussdb 505 A 模式 的兼容性、改写路径与验证建议。

兼容性判定

支持度partial
严重度major
置信度high
依据规则ora.pkg.dbms_job, ora.pkg.dbms_scheduler, ora.plsql.dbms_scheduler

怎么改

需按命中位置逐条评估改写

判定说明

有类 DBMS_JOB 定时任务兼容接口(PKG_SERVICE/DBE_TASK 类);DBMS_SCHEDULER 全量语义无对应

库侧 / 应用侧路径

库侧改造

需人工确认改造边界

应用侧改造

需人工确认改造边界

推荐路线:case_by_case。验证建议:作业清单先从 DBA_JOBS 导出对账;迁移后必须验证到点触发、失败重试与作业间依赖顺序,interval 表达式需逐条改写为目标调度语法

规则样例

BEGIN DBMS_SCHEDULER.CREATE_JOB(job_name=>'J_SYNC', job_type=>'PLSQL_BLOCK', job_action=>'BEGIN sync_pkg.run; END;', repeat_interval=>'FREQ=DAILY'); END;
BEGIN DBMS_JOB.SUBMIT(:jid, 'refresh_pkg.run;', SYSDATE, 'SYSDATE+1'); END;
BEGIN DBMS_OUTPUT.PUT_LINE('done'); END;

参考来源