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. Drupal Working with nodes, content types and fields

    一个大概的总结,便于对接下来的学习进行理解和运行 在使用Drupal过程中.站点中的内容的不论什么一个部分都是一个节点(node),而每一个节点中又包括了一些默认的字段(fields). 值得说明的是 ...

  2. STL - 容器 - 运行期指定排序准则

    RuntimeCmp.hpp #include <set> using namespace std; // type for runtime sorting criterion class ...

  3. Ajax中文传参出现乱码

    Ajax技术的核心为Javascript,而javascript使用的是UTF-8编码,因此在页面采用GBK或者其他编码,同时没有进行编码转换时,就会出现中文乱码的问题. 以下是分别使用GET和POS ...

  4. [转]查看linux服务器硬盘IO读写负载

    最近一台linux服务器出现异常,系统反映很慢,相应的应用程序也无法反映,而且还出现死机的情况,经过几天的观察了解,发现服务器压力很大,主要的压力来自硬盘的IO访问已经达到100% 为了方便各位和自己 ...

  5. 1z0-052 q209_6

    6: You executed this command to create a temporary table: SQL> CREATE GLOBAL TEMPORARY TABLE repo ...

  6. java指令备忘

    javap  查看class文件用 指令码 助记符 说明 0x00 nop 什么都不做 0x01 aconst_null 将null推送至栈顶 0x02 iconst_m1 将int型-1推送至栈顶 ...

  7. Unix 网络编程 读书笔记3

    第四章 基本tcp 套接口编程 注意区分AF_XXX 和PF_XXX,AF代表address family, PF代表protocol family. 1 socket 函数 2 connect 函数 ...

  8. 28种CSS3炫酷载入动画特效

    这是一组效果很炫酷的纯CSS3 Loading载入动画特效.这组loading动画共同拥有27种不同的效果.每一种loading动画都是通过CSS3的keyframes帧动画来完毕的,每个载入动画都构 ...

  9. hbase中的缓存的计算与使用

    hbase中的缓存分了两层:memstore和blockcache. 其中memstore供写使用,写请求会先写入memstore,regionserver会给每个region提供一个memstore ...

  10. C++开发安卓、windows下搭建Android NDK开发环境

    1. NDK(Native Development Kit) 1.1 NDK简介 Android NDK是一套允许开发人员使用本地代码(如C/C++)进行Android APP功能开发的工具,通过这个 ...