gpt4 book ai didi

Oracle Job时间间隔设置

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 24 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章Oracle Job时间间隔设置由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

初始化相关参数job_queue_processes 。

alter system set job_queue_processes=39 scope=spfile;//最大值不能超过1000 ;job_queue_interval = 10 //调度作业刷新频率秒为单位 。

job_queue_process 表示oracle能够并发的job的数量,可以通过语句   。

show parameter job_queue_process,

select * from v$parameter where name='job_queue_processes',

来查看oracle中job_queue_process的值。当job_queue_process值为0时表示全部停止oracle的job,可以通过语句 。

ALTER SYSTEM SET job_queue_processes = 10,

来调整启动oracle的job.

相关视图:

dba_jobs all_jobs user_jobs dba_jobs_running 包含正在运行job相关信息 。

相关查证jobs情况的sql:

select job,last_date,last_sec,next_date,next_sec,INTERVAL,WHAT from dba_jobs order by job,

------------------------- 。

提交job语法:

  。

复制代码代码如下:
begin
sys.dbms_job.submit(job => :job,
                      what => 'P_CLEAR_PACKBAL;',
                      next_date => to_date('04-08-2008 05:44:09', 'dd-mm-yyyy hh24:mi:ss'),
                      interval => 'sysdate+ 1/360');
commit;
end;
/

  。

------------------------- 。

创建JOB 。

  。

复制代码代码如下:
variable jobno number;
begin
dbms_job.submit(:jobno, 'P_CRED_PLAN;',SYSDATE,'SYSDATE+1/2880',TRUE);
commit;

  。

运行JOB 。

  。

复制代码代码如下:
SQL> begin
         dbms_job.run(:job1);
         end;
         /

  。

删除JOB 。

  。

复制代码代码如下:
SQL> begin
        dbms_job.remove(:job1);
        end;
        /

  。

DBA_JOBS 。

=========================================== 。

  。

字段(列) 。

类型 。

描述 。

JOB 。

NUMBER 。

任务的唯一标示号 。

LOG_USER 。

VARCHAR2(30) 。

提交任务的用户 。

PRIV_USER 。

VARCHAR2(30) 。

赋予任务权限的用户 。

SCHEMA_USER 。

VARCHAR2(30) 。

对任务作语法分析的用户模式 。

LAST_DATE 。

DATE 。

最后一次成功运行任务的时间 。

LAST_SEC 。

VARCHAR2(8) 。

如HH24:MM:SS格式的last_date日期的小时,分钟和秒 。

THIS_DATE 。

DATE 。

正在运行任务的开始时间,如果没有运行任务则为null 。

THIS_SEC 。

VARCHAR2(8) 。

如HH24:MM:SS格式的this_date日期的小时,分钟和秒 。

NEXT_DATE 。

DATE 。

下一次定时运行任务的时间 。

NEXT_SEC 。

VARCHAR2(8) 。

如HH24:MM:SS格式的next_date日期的小时,分钟和秒 。

TOTAL_TIME 。

NUMBER 。

该任务运行所需要的总时间,单位为秒 。

BROKEN 。

VARCHAR2(1) 。

标志参数,Y标示任务中断,以后不会运行 。

INTERVAL 。

VARCHAR2(200) 。

用于计算下一运行时间的表达式 。

FAILURES 。

NUMBER 。

任务运行连续没有成功的次数 。

WHAT 。

VARCHAR2(2000) 。

执行任务的PL/SQL块 。

CURRENT_SESSION_LABEL 。

RAW MLSLABEL 。

该任务的信任Oracle会话符 。

CLEARANCE_HI 。

RAW MLSLABEL 。

该任务可信任的Oracle最大间隙 。

CLEARANCE_LO 。

RAW MLSLABEL 。

该任务可信任的Oracle最小间隙 。

NLS_ENV 。

VARCHAR2(2000) 。

任务运行的NLS会话设置 。

MISC_ENV 。

RAW(32) 。

任务运行的其他一些会话参数 。

  。

-------------------------- 描述                    INTERVAL参数值 每天午夜12点            'TRUNC(SYSDATE + 1)' 每天早上8点30分         'TRUNC(SYSDATE + 1) + (8*60+30)/(24*60)' 每星期二中午12点         'NEXT_DAY(TRUNC(SYSDATE ), ''TUESDAY'' ) + 12/24' 每个月第一天的午夜12点    'TRUNC(LAST_DAY(SYSDATE ) + 1)' 每个季度最后一天的晚上11点 'TRUNC(ADD_MONTHS(SYSDATE + 2/24, 3 ), 'Q' ) -1/24' 每星期六和日早上6点10分    'TRUNC(LEAST(NEXT_DAY(SYSDATE, ''SATURDAY"), NEXT_DAY(SYSDATE, "SUNDAY"))) + (6×60+10)/(24×60)' 。

-------------------------- 。

1:每分钟执行 。

Interval => TRUNC(sysdate,'mi') + 1/ (24*60) 。

2:每天定时执行 。

例如:每天的凌晨1点执行 。

Interval => TRUNC(sysdate) + 1 +1/ (24) 。

3:每周定时执行 。

例如:每周一凌晨1点执行 。

Interval => TRUNC(next_day(sysdate,'星期一'))+1/24 。

4:每月定时执行 。

例如:每月1日凌晨1点执行 。

Interval =>TRUNC(LAST_DAY(SYSDATE))+1+1/24 。

5:每季度定时执行 。

例如每季度的第一天凌晨1点执行 。

Interval => TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 1/24 。

6:每半年定时执行 。

例如:每年7月1日和1月1日凌晨1点 。

Interval => ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/24 。

7:每年定时执行 。

例如:每年1月1日凌晨1点执行 。

Interval =>ADD_MONTHS(trunc(sysdate,'yyyy'),12)+1/24 。

最后此篇关于Oracle Job时间间隔设置的文章就讲到这里了,如果你想了解更多关于Oracle Job时间间隔设置的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com