BEGIN
DBMS_SCHEDULER.CREATE_JOB (
job_name => 'PARAMETER_MONI',
job_type => 'PLSQL_BLOCK',
job_action => 'begin insert into parameter2
SELECT x.ksppinm NAME, y.ksppstvl VALUE, x.ksppdesc describ,sysdate
FROM SYS.x$ksppi x, SYS.x$ksppcv y
WHERE x.indx = y.indx;commit;end;',
start_date => to_timestamp_tz('2012-06-26 10:15:28','YYYY-MM-DD HH24:MI:SS'),
repeat_interval => 'FREQ=DAILY;INTERVAL=1');
END;
2.修改设置
(1)
begin
dbms_scheduler.set_attribute(
name => 'PARAMETER_MONI',
attribute => 'job_action',
value => 'begin insert into parameter1
SELECT x.ksppinm NAME, y.ksppstvl VALUE, x.ksppdesc describ,sysdate
FROM SYS.x$ksppi x, SYS.x$ksppcv y
WHERE x.indx = y.indx;commit;end;');
END;
(2)
begin
dbms_scheduler.set_attribute(
name => 'PARAMETER_MONI',
attribute => 'start_date',
value => to_timestamp_tz('2012-06-26 10:33:28','YYYY-MM-DD HH24:MI:SS'));
END;
(3)
begin
dbms_scheduler.set_attribute(
name => 'PARAMETER_MONI2',
attribute => 'auto_drop',
value => false);
end;
3.开启,运行
a.---DBMS_SCHEDULER.ENABLE (
name IN VARCHAR2);
b.---dbms_scheduler.run_job('PARAMETER_MONI2');
4.auto_drop设置
DBMS_SCHEDULER.DISABLE (
name IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE);
5.另外指定具体的时间点如在14,23点运行;
repeat_interval => 'FREQ=DAILY;BYHOUR=14,23;'
6.查询
select * from DBA_SCHEDULER_JOBS
7.对于RAC架构如果要指定节点
采用先建立JOB_CLASS里面指定SERVICE,然后创建JOB时指定此JOB_CLASS即可;
本文深入解析了使用DBMS_SCHEDULER创建、修改、开启、运行SQL调度作业的过程,包括参数设置、时间点指定及查询等关键步骤。
1388

被折叠的 条评论
为什么被折叠?



