job 不能自己主动执行--这是另外一个mos文章



參考原文:



Jobs Not Executing Automatically (Doc ID 313102.1)



适用于:

Oracle Database - Enterprise Edition - Version 9.2.0.3 to 10.2.0.4 [Release 9.2 to 10.2]

Information in this document applies to any platform.





症状:

job已经非常长时间没有自己主动执行了。

假设强制运行(exec dbms_job.run(<enter here job number>);), 这些job是能成功运行的。

原因:

依照例如以下步骤检查job无法自己主动运行的原因:



1) instance处于RESTRICTED SESSIONS 模式?





select instance_name,logins from v$instance;



If logins=RESTRICTED, then:

alter system disable restricted session;



--->注意,正常情况下。logins应该返回: ALLOWED



2)JOB_QUEUE_PROCESSES=0

show parameter job_queue_processes



一定要让job_queue_processes这个參数大于零。



3)隐含參数_SYSTEM_TRIG_ENABLED=FALSE



col parameter format a25

col value format a15

select a.ksppinm parameter,b.ksppstvl value from x$ksppi a,x$ksppcv b

where a.indx=b.indx and ksppinm='_system_trig_enabled';



假设 _system_trig_enabled=false, 那么运行例如以下命令改为true



alter system set "_system_trig_enabled"=TRUE scope=both;



4)job 被broken了 ?

select job,broken from dba_jobs where job=<job_number>;



假设job被broken了。那么请检查alert日志和trace file 来诊断broken的原因。

5)job 带commitkeyword了?

一定要保证 commit 出如今submit job之后



DECLARE X NUMBER;

BEGIN

SYS.DBMS_JOB.SUBMIT

(

job => X

,what => 'dbms_utility.analyze_schema

(''SCOTT'',''COMPUTE'',NULL,NULL,NULL);'

,next_date => to_date('08/06/2005 09:35:00','dd/mm/yyyy hh24:mi:ss')

,no_parse => FALSE

);

COMMIT;   --->注意:这个COMMIT一定得有。

END;

/





假设强制运行job是ok的(比方这么运行 exec dbms_jobs.run(<job_no>);),那么非常可能是缺少一个commit





6)os 已经启动超过497天



检查数据库server操作系统是否已经启动超过497天。

 

对于linux,unix而言。请使用uptime来检查。



假设uptime的结果大于497天。而且job不能自己主动运行。那么就遇到了未公开的bug3427424(Jobs may stop running after 497 days uptime)


该bug 在9026 和10gR2上被修复(fix)





7)dba_jobs_running

检查dba_jobs_running视图确认,该job是否依旧在执行。





8) LAST_DATE and NEXT_DATE (在dba_jobs这个视图中)



检查相关job的 LAST_DATE 和 NEXT_DATE 列的内容。

select Job,Next_date,Last_date from dba_jobs where job=<job_number>;



假设NEXT_DATE 是正常的。可是LAST_DATE 是null的。那么该job 永远不会自己主动运行。





9) NEXT_DATE and INTERVAL(在dba_jobs这个视图中)



检查 NEXT_DATE 是否随interval 的设置在变化

select Job,Interval,Next_date,Last_date from dba_jobs where job=<job_number>;





10)对JOB_QUEUE_PROCESSES切换值



停止并重新启动cjq 进程

alter system set job_queue_processes=0 ;

--<等待一会以保证cjq进程停止>



alter system set job_queue_processes=4 ;



參考bug2649244 (该bug 在9015, 9203, 10201中被修复)



11)检查不成功的shutdown



一个shutdown immediate 可能被取消(conceled),由于active session 阻止 database 的关闭。



请检查alert 日志,查看最后两次的shutdown immediate。是否有例如以下的信息:



SHUTDOWN: Active sessions prevent database close operation



请參考:

Note 434690.1 - Database Jobs Do Not Run After a Failed 'Shutdown Immediate'





12)  DBMS_IJOB (该package 未在文档上记载)

Either restart the database or try the following:



exec dbms_ijob.set_enabled(true);



Ref: Bug 3505718 (Closed, Not a Bug)



13)检查 视图 DBA_SCHEDULER_GLOBAL_ATTRIBUTE 的 CURRENT_OPEN_WINDOW 属性值



If a window is open ,close it (e.g.):



ATTRIBUTE_NAME                       VALUE

---------------------------------       ----------------------------

CURRENT_OPEN_WINDOW            WEEKNIGHT_WINDOW



SQL> exec DBMS_SCHEDULER.close_window ('WEEKNIGHT_WINDOW');







解决方式:



不再翻译。

该解决方式是针对os已经启动126天之后。job就无法自己主动执行的。

【翻译自mos文章】job 不能自己主动执行--这是另外一个mos文章,本文章有13个解决方法的更多相关文章

  1. 测者的测试技术手册:Junit执行单元测试用例成功,mvn test却失败的问题和解决方法

    今天遇见了一个奇怪的问题,在IDE中run unit test,全部cases都成功了,但是后来通过mvn test运行case确保错了.在寻求原因的同时也找到了对应的解决方法. Run Unit T ...

  2. PyQt程序执行时报错:AttributeError: 'winTest' object has no attribute 'setCentralWidget'的解决方法

    用QtDesigner设计了一个UI界面,保存在文件Ui_wintest.ui中,界面中使用了MainWindow窗口,窗口名字也叫MainWindow,用PyUIC将其转换成了 Ui_wintest ...

  3. 【翻译自mos文章】job 不能自己主动运行的解决方法

    job 不能自己主动运行的解决方法 參考原文: Jobs do not execute automatically (Doc ID 309945.1) 适用于: Oracle Server - Ent ...

  4. 猫猫学iOS之小知识之_xcode插件的删除方法_自己主动提示图片插件KSImageNamed有时不灵_分类或宏之类不能自己主动提示,

    猫猫分享,必须精品 原创文章.欢迎转载. 转载请注明:翟乃玉的博客 地址:http://blog.csdn.net/u013357243 一:解决解决自己主动提示图片插件KSImageNamed有时不 ...

  5. Linux 服务的加入删除,自己主动执行及状态

    CAMS 在安装过程中会自己主动加入相关的服务.在安装的最后过程中会提示用户是否启动服务使服务生效,须要注意的是一个服务被加入后并不表示该服务在系统启动过程中会自己主动执行,仅表示能够使用servic ...

  6. 执行游戏时出现0xc000007b错误的解决方法

    如图,这个错误使无数玩家烦恼. 出现这个错误,可能是硬件的问题,也可能是软件的问题.可是,因为硬件引起该问题的概率非常小,而且除了更换硬件之外没有更好的解决方法,因此本文将具体介绍怎样通过软件解决此问 ...

  7. 0当执行游戏xc000007b错误的解决方法

    如图所示,这个错误是让很多玩家担心. 出现这个错误,可能是硬件的问题,也可能是软件的问题. 可是.因为硬件引起该问题的概率非常小,而且除了更换硬件之外没有更好的解决方法,因此本文将具体介绍怎样通过软件 ...

  8. 当执行游戏0xc000007b错误的解决方法

    如图,这个错误使无数玩家烦恼. 出现这个错误,可能是硬件的问题,也可能是软件的问题.可是,因为硬件引起该问题的概率非常小,而且除了更换硬件之外没有更好的解决方法,因此本文将具体介绍怎样通过软件解决此问 ...

  9. ubuntu使用ssh登入不执行.bashrc解决方法

    解决方法,可以直接输入 bash即可. 理解 bashrc 和 profile linux bashrc profile SEP 30TH, 2011 BY SUNTEYA 在一般的 linux 或者 ...

随机推荐

  1. 【Nodejs】“快算24”扑克牌游戏算法

    算24是一款扑克牌游戏,它的游戏方式是把四张牌的牌面数值通过四则运算得到结果24,四张牌必须仅用一次.这是一种挺好的锻炼孩子算数能力的扑克牌游戏. 各地玩法还有点差别,有的只算1-10,其它抽出来:有 ...

  2. 更改Apache的首页

    本机Apache的安装过程请见: Apache的首页是由/usr/local/httpd/conf/httpd.conf文件的DocumentRoot决定的. ...## DocumentRoot: ...

  3. C语言:strcpy()和memcpy()

    一.strcpy和memcpy都是标准C库函数,它们有下面的特点:      1.strcpy提供了字符串的复制.即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符. ...

  4. docker入门——构建镜像

    前面我们已经介绍了如何拉取已经构建好的带有定制内容的Docker镜像,那么如何构建自己的镜像呢? 构建Docker镜像有以下两种方法: 使用docker commit命令. 使用docker buil ...

  5. 修改字段结构之GP工具

    即然有这个需求,就有人这样做.有人写了GP工具直接来重命名字段名和字段别名.工具及源码下载链接为:http://www.t00y.com/file/90123888 加载到ToolBox中后,可直接运 ...

  6. bzoj3675【APIO2014】序列切割

    3675: [Apio2014]序列切割 Time Limit: 40 Sec  Memory Limit: 128 MB Submit: 1468  Solved: 607 [Submit][Sta ...

  7. 设定StatusBar的文字成不同的颜色

    设定StatusBar上的文字,该文字以StatusBar所在Form的字型设定为准,并以form的ForeColor为字的颜色,文字过长时,自动会截除这个程式的实质意义不太大,因为当文字被盖掉後需自 ...

  8. chrome插件的popup与跨域请求

    chrome插件的popup与跨域请求 tkorays <tkorays@hotmail.com> popup及其它js脚本         在chrome插件开发中,大致有几种类型的js ...

  9. Hat’s Words(字典树)

    Problem Description A hat's word is a word in the dictionary that is the concatenation of exactly tw ...

  10. uploadify上传之前判断一个input输入框是否为空

    onUploadStart:function(file){ if ($("#ContractCode").val() == "") { alert(" ...