以下に説明するいくつかの考えられる理由。job_queue_processesが低すぎる可能性があります。チェックするにはv$parameterからqueryselect値を実行します。ここでname='job_queue_processes';
次に、実行中のジョブの数を確認します
select count(*) from dba_scheduler_running_jobs;
select count(*) from dba_jobs_running;
これが問題である場合は、
を使用してパラメータを増やすことができます。alter system set job_queue_processes=1000;
2)max_job_slave_processesが低すぎる可能性がありますこのパラメーターがNULLでない場合、一度に実行できるdbms_schedulerジョブの数が制限されます。 wを確認するには
select value from dba_scheduler_global_attribute
where attribute_name='MAX_JOB_SLAVE_PROCESSES';
次に、実行中のジョブの数を確認します
select count(*) from dba_scheduler_running_jobs;
これが問題である場合は、数を増やすか、を使用して単にNULLにすることができます
exec dbms_scheduler.set_scheduler_attribute('max_job_slave_processes',null)
3)セッションが低すぎる可能性があります
4)スケジューラが無効になっているかどうかを確認します
select value from dba_scheduler_global_attribute where attribute_name='SCHEDULER_DISABLED'
このクエリがTRUEを返す場合は、SQL> exec dbms_scheduler.set_scheduler_attribute('scheduler_disabled','false');
を使用してこれを修正できます。