Oracle Job Scheduler无法正常工作

穆罕默德·费萨尔(Muhammad Faisal)

我在oracle中创建了一个将在每分钟运行的作业,但问题是作业创建成功但未按时运行

execute PACKAGE_BATCH.USP_TERMIANTE_SUSPENSION;
BEGIN
    DBMS_SCHEDULER.CREATE_JOB (
            job_name => '"LTR"."TERMINATE_SUSPENSION_JOB"',
            job_type => 'STORED_PROCEDURE',
            job_action => 'LTR.PACKAGE_BATCH.USP_TERMINATE_SUSPENSION',
            number_of_arguments => 0,
            start_date => sysdate,
            repeat_interval => 'FREQ=MINUTELY;BYMINUTE=1',
            end_date => NULL,
            enabled => TRUE,
            auto_drop => TRUE,
            comments => 'Terminate Suspension When End Date is equal to Current Date');

            DBMS_SCHEDULER.set_attribute
            ( name => '"LTR"."TERMINATE_SUSPENSION_JOB"',
            attribute => 'job_action', 
            value => 'LTR.PACKAGE_BATCH.USP_TERMINATE_SUSPENSION');

            DBMS_SCHEDULER.SET_ATTRIBUTE( 
             name => '"LTR"."TERMINATE_SUSPENSION_JOB"', 
             attribute => 'logging_level', value => DBMS_SCHEDULER.LOGGING_RUNS);

    DBMS_SCHEDULER.enable(
             name => '"LTR"."TERMINATE_SUSPENSION_JOB"');
END;
方格的
FREQ=MINUTELY;BYMINUTE=1

这将使作业每“ 1”分钟运行一次。所以12:01、1:01、2:01等

如果您需要使其每分钟运行一次-FREQ=MINUTELY足够了,或者可以添加BYSECOND=0以确保它恰好在12:01:00、12:02:00、12:03:00等运行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章