DBMS_SCHEDULER 浅析

2026-04-21 04:17:22

1、Oracle 10g引入了dbms_scheduler用来替换之前的dbms_job,在功能特性等方面,它拥有着比dbms_job更强大的以及更加灵活可控的机制。

2、对比DBMS_JOB的优点:

1.有执行的日志,包含但不限于下列表

select * from  user_scheduler_job_log;

select * from  user_scheduler_job_run_details;

select * from  user_scheduler_chains;

select * from  user_scheduler_jobs;

2.简单强大的时间计划语法(类似CRON语法)

3.与操作系统联系更加方便,可以执行系统指令

4.方便管理不同类的job5. use of job arguments including passing of objects into stored procedures6.privilege-based security model for jobs7.naming of jobs and comments in jobs8.stored, reusable schedules

3、它主要由几大块构成:

1.作业(job): 10g版本中SCHEDULER将JOB分成了多个部分,program负责做什么,schedule负责啥时候做,job就简单了,一个字:做。

4、2.调度(scheduler):schedule负责啥时候做

 begin

  2  DBMS_SCHEDULER.CREATE_SCHEDULE (

  3    schedule_name     => ¨my_first_schedule¨,

  4    start_date        => SYSDATE,

  5    repeat_interval   => ¨FREQ= DAILY ; INTERVAL=1¨,

  6    comments          => ¨Every 1 weeks¨);

  7  END;

  8  /

5、3.程序(program):program负责做什么,

BEGIN

  2  DBMS_SCHEDULER.CREATE_PROGRAM (

  3     program_name           => ¨my_program1¨,

  4     program_action         => ¨/bin/date¨,

  5     program_type           => ¨EXECUTABLE¨,

  6     enabled                => TRUE);

  7  END;

  8  /

6、4.链(chain):

7、5.作业类(job_class):

8、6.窗口(window):

9、7.窗口组(window_group):

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢