Oracle-任务调度(DBMS_Scheduler)

发布时间 2023-06-15 10:41:38作者: 丹心石

Dbms_Scheduler

Oracle 10g 之前,可以使用dbms_job来管理定时任务:

dbms_job.submit(job=>outjob,what=>'pro_name;',next_date=>sysdate,inteval=>'sysdate+1/24');

10g 之后,Oracle 引入了dbms_scheduler 和 program ,在功能方面,它比dbms_job提供了更强大的功能和灵活的机制/管理。

使用dbms_scheduler 创建一个定时任务有两种形式:
  • 创建一个scheduler来定义计划,一个program来定义任务内容,在创建一个job,为这个job指定上面的scheduler和program
  • 直接创建job,在参数里面直接指定计划和任务内容
要执行dbms_scheduler需要create job 权限
select * from dba_sys_privs where grantee=upper('t1'); --dba权限
grant create job to t1  --授权