Dbms scheduler jobs, programs and schedules

From dbawiki
Jump to: navigation, search

Create a scheduled job[edit]

DBMS_SCHEDULER.CREATE_JOB( job_name        => 'rebuild_view_all_rmans'
                         , job_type        => 'STORED_PROCEDURE'
                         , job_action      => 'create_all_rmans.rebuild_view'
                         , repeat_interval => 'FREQ=DAILY;BYHOUR=8;BYMINUTE=0;BYSECOND=0'
                         , enabled         => TRUE
                         , comments        => 'Rebuild view ALL_RMANS');

or create a job to run statspack at 15 minute intervals during office hours

col JOB_NAME      for a20
col OWNER         for a20
col JOB_ACTION    for a30
col START_DATE    for a50
col START_DATE    for a40
col NEXT_RUN_DATE for a40
select OWNER,JOB_NAME,JOB_ACTION,START_DATE,NEXT_RUN_DATE,STATE,ENABLED from dba_scheduler_jobs where job_name like '%STATS%';

set serveroutput on
BEGIN
DBMS_SCHEDULER.CREATE_JOB(
   job_name        => 'statspack_snap'
  ,job_type        => 'STORED_PROCEDURE'
  ,job_action      => 'statspack.snap'
  ,repeat_interval => 'FREQ=HOURLY; BYDAY=MON,TUE,WED,THU,FRI; BYHOUR=8,9,10,11,12,13,14,15,16,17,18; BYMINUTE=15,30,45'
  ,auto_drop       => FALSE
  ,enabled         => TRUE
  ,comments        => 'statspack snap');
END; 

select OWNER,JOB_NAME,JOB_ACTION,START_DATE,NEXT_RUN_DATE,STATE,ENABLED from dba_scheduler_jobs where job_name like '%STATS%';

Run a scheduled job[edit]

execute dbms_scheduler.run_job('xxxTOOLS.REBUILD_VIEW_ALL_RMANS');