zoukankan      html  css  js  c++  java
  • 提交的一个job 不运行

    提交的一个job 不运行

    原文SUBMITTED A JOB IT IS NOT RUNNING (Doc ID 1026586.6)

    问题描述:
    你已经使用dbms_job.submit package 提交了一个job,但是该job没有正常运行。

    解决方案描述:

    当你遇到该问题时,有多种情况需要检查。下面的诊断将会帮助你定位问题。


    诊断列表(diagnostic checklist)

    a)  是否有snp进程在运行?
    SVRMGR> connect internal
    Connected.
    SVRMGR> show parameter job
    NAME        TYPE    VALUE
    ----------------------------------- ------- ------------------------------
    job_queue_interval                  integer 10
    job_queue_keep_connections          boolean FALSE
    job_queue_processes                 integer 1
     
    job_queue_processes must be >= 1

    --->额外注意:此处还有job_queue_interval 这个参数以及svrmgr以及snp进程,估计是8i或者是更早版本。

    b) 检查dba_jobs 并确认你的那个job在查询结果中。

    SQL> select job, last_date, last_sec, next_date, next_sec, this_date, this_sec,
    broken, failures, interval, what from user_jobs;

    BROKEN:
      如果Y,意味着你的这个job有16次 failure,并且该job不再执行。
      并且snp.trc file应在在bdump目录下被建立。该trc文件可以看到job不执行的原因。
      一旦你解决了这个问题,unbreak 这个job:
      execute dbms_job.broken(16,false);

    LAST_DATE&LAST_SEC/NEXT_DATE&NEXT_SEC:
      验证the last execution and the next execution
      以判断该job是否实际的执行过 和 该job是否被调度以准备下一次的执行。
     
    如果 WHAT 列 没有你调度的那个job,原因要么是该job被remove掉了,要么是没有正确的提交(submit)

    c)查询DBA_JOBS_RUNNING 视图,以确认该job是否正在运行并且还没有运行完毕。

    d)验证对于 该job的user 下 有a private database link
      (LOG_USER:  USER logged in when job was submitted)
     
    e)在执行 DBMS_JOB.SUBMIT的存储过程后面,加一个commit
     The COMMIT 必须声明以提交该job

    f)验证你的job,当存储过程执行后,在exiting之前,会发出一个commit。
     
     
    参考文档:
    http://blog.csdn.net/msdnchina/article/details/37611891
  • 相关阅读:
    P3853 [TJOI2007]路标设置
    P1182 数列分段`Section II`
    P1948 [USACO08JAN]电话线Telephone Lines
    P1541 乌龟棋
    P1005 矩阵取数游戏
    P4001 [BJOI2006]狼抓兔子
    Windows环境中Tomcat优化
    可视化GC日志工具
    垃圾回收器
    垃圾回收机制
  • 原文地址:https://www.cnblogs.com/hezt1114/p/8487868.html
Copyright © 2011-2022 走看看