首页 > 代码库 > job不自动运行解决方法

job不自动运行解决方法

一、plsql、新建命令窗口

用查询语句:

show parameter job_queue_processes

看看job_queue_processes的值

 如果你的job很多那么将这个值设大,500、1000、再大。

二、plsql、新建sql窗口

alter system set job_queue_processes =10;

三、详解

a、从上面的描述可知,对于Oracle job进程,包含协调进程(主进程)以及奴隶进程(子进程)。
b、job_queue_processes取值范围为0到1000,总共可创建多少个job进程由job_queue_processes参数来决定。
c、当job_queue_processes大于1时,且并行执行job时,至少一个为协调进程。其总数不会超出job_queue_processes的值。
d、job_queue_processes参数的值为且DBMS_JOB与DBMS_SCHEDULER共享。
e、job_queue_processes参数,当设定该值为0的时候则任意方式创建的job都不会运行。
f、非零值的job_queue_processes,其job子进程数依赖于可用资源,资源配置方式以及当前运行的job数来自行调整。
g、此外对于Scheduler jobs方式还受限制于scheduler属性MAX_JOB_SLAVE_PROCESSES的设置。
h、可以通过DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE来设置max_job_slave_processes

job不自动运行解决方法