Ø JOBS是SCHEDULER的最终执行者,DBMS_SCHEDULER.CREATE_JOB可以相当于是DBMS_JOB.SUBMIT。JOBS可以调度3类:在JOB_ACTION中定义的代码(匿名PLSQL,存储过程,外部脚本),在JOB_ACTION中定义的CHAIN,在PROGRAM_NAME中定义的PROGRAMS
Ø PROGRAMS是调度的程序,可以有3种:PLSQL_BLOCK,STORED_PROCEDURE,EXECUTABLE
Ø CHAINS是PROGRAMS的串行,其对应在JOBS中的 JOB_TYPE=CHAIN时调度
Ø JOB_CLASS定义资源组的日志记录情况和资源消耗
Ø SCHEDULES定义JOB执行时间,其可以直接在定义给JOB,或者通过WINDOWS间接定义给JOB
Ø WINDOWS定义JOB执行范围和该范围内使用的系统资源计划
Ø WINDOW GROUP定义的是一组WINDOWS,用于控制JOB执行的时间段以及资源计划
Ø 最简单的,只需要DBMS_SCHEDULER.CREATE_JOB创建一个JOBS就可以了,其和DBMS_JOB.SUBMIT是一样的
Ø 如果像一个程序(匿名PLSQL,外部脚本)可能要在多个JOBS里面调度,最好就是定义成一个PROGRAMS,以方便调度
Ø 如果需要几个PROGRAMS串行调度,那么将PROGRAMS定义成CHAINS,拿给JOBS调度
Ø 调度时间规则可以直接在DBMS_SCHEDULER.CREATE_JOB时候指定,也可以把调度时间规则做成一个SCHEDULES,那么JOBS调度
Ø 资源分配可以用JOB_CLASS来分配,或者通过更复杂的WINDOW GROUP来分配
Ø WINDOWS是为定义那种调度规则,资源分配都很复杂的时候使用的Ø
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8242091/viewspace-586785/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8242091/viewspace-586785/