nstc.net
当前位置:首页 >> OrAClE joB不执行怎么分析处理 >>

OrAClE joB不执行怎么分析处理

select * from dba_jobs 看一下job 上次运行时间,本次应该什么时间运行 select * from dba_jobs_running 看一下目前正在运行的job,是否包含当前job show parameters job_queue_processes 看一下当前数据库实例最多可以运行的job数是否超过上限

用sysdba登录,执行show parameter job_queue_process看看结果是不是0 如果是这个原因,可以修改此参数 ALTER SYSTEM SET job_queue_processes = 10;

要查failure的原因,最简单job里记录运行情况日志并输出

1:把建job的脚本发出来看看2:检查dba_jobs中job的状态3:检查job的频率设置是正确

查看job_queue_processes 值,必须大于0才会执行 show parameter job ; 更改job_queue_processes 值 alter system set job_queue_processes =20

找出正在执行的JOB编号及其会话编号 SELECT SID,JOB FROM DBA_JOBS_RUNNING; 停止该JOB的执行 SELECT SID,SERIAL# FROM V$SESSION WHERE SID='&SID'; ALTER SYSTEM KILL SESSION '&SID,&SERIAL'; EXEC DBMS_JOB.BROKEN(&JOB,TRUE);实例分析:1,...

把控制这个job的session kill掉,然后drop了这个job。

job的运行情况无非是成功和失败,oracle也不会记录的 select * from dba_jobs 所有的JOB select * from dba_jobs_running 正在运行

你可以单独执行一下存储过程。 看出什么错,这个就是你的存储过程执行失败导致的。 希望我的回答对你有帮助。

通常像这种自动任务的脚本都需要记录日志,记录每次运行的状态情况,方便问题跟踪,有没有问题是过程脚本问题还是自动任务问题,查看日志一下子就可以定位。

网站首页 | 网站地图
All rights reserved Powered by www.nstc.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com