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. js数组对象深度复制

    var deepCopy = function(o) { if (o instanceof Array) { var n = []; for (var i = 0; i < o.length; ...

  2. (算法)前K大的和

    题目: 1.有两个数组A和B,每个数组有k个数,从两个数组中各取一个数加起来可以组成k*k个和,求这些和中的前k大. 2.有N个数组,每个数组有k个数,从N个数组中各取一个数加起来可以组成k^N个和, ...

  3. TotalCommander如何比较文件夹并提取出重复的文件

    1 如图所示,我左侧有一万本多小说,右侧有两千五百多本小说,我希望比较这两个文件夹相同的小说并剪切到一个新的文件夹中. 2 我们使用Total Commander对比这两个文件夹 3 随后两个文件夹相 ...

  4. ArcGIS安装问题集锦

    1. 软件安装 软件下载.安装问题自行解决,否则就不要使用. 2. 常见问题 2.1 许可管理器版本不正确 2013年3月19日 问题一:ArcGIS10安装后,更改许可管理器时,通常,在ArcGIS ...

  5. Python编程-Office操作-操作Excel(上)

    首先,需要安装openpyxl库 http://openpyxl.readthedocs.org/en/default/ pyton 2.xpip install openpyxl python 3. ...

  6. PHP-7

    PHP 7+ 版本极大地改进了性能,在一些WordPress基准测试当中,性能可以达到PHP 5.6的3倍. PHP 7+ 版本新加特性如下表所示: 序号 内容 1 PHP 标量类型与返回值类型声明 ...

  7. openerp用wizard导入excel数据

    来自:http://blog.csdn.net/yumingbuzhongyao/article/details/18669183 作为一个quick note吧. OE里的csv导入数据功能形同摆设 ...

  8. org.apache.commons.lang.StringUtils中isEmpty和isBlank的区别

    public static boolean isEmpty(String str) 判断某字符串是否为空,为空的标准是str==null或str.length()==0 StringUtils.isE ...

  9. redhat利用yum快速搭建LAMP环境

    LAMP LAMP环境,对于PHP开发及其开源的PHP项目的部署都很关键的. LAMP的含义: L   ---Linux A  ---Apache   web M ---Mysql     datab ...

  10. ORACLE 11G 利用泠备份恢复standby库

    利用泠备份恢复standby数据库 開始使用泠备份进行db恢复 2.1,停止掉standby库 SQL> shutdown immediate; Database closed. Databas ...