Oracle
 sql >> Base de données >  >> RDS >> Oracle

dbms_scheduler Créer un travail Travail non exécuté

Certaines des raisons possibles mentionnées ci-dessous.job_queue_processes peuvent être trop faiblesPour vérifier Exécuter la requête ci-dessous, sélectionnez la valeur de v$parameter où name='job_queue_processes' ;

Vérifiez ensuite le nombre de tâches en cours d'exécution

select count(*) from dba_scheduler_running_jobs;
select count(*) from dba_jobs_running;

Si tel est le problème, vous pouvez augmenter le paramètre en utilisant

alter system set job_queue_processes=1000;

2) max_job_slave_processes peut être trop faible Si ce paramètre n'est pas NULL, il limite le nombre de tâches dbms_scheduler pouvant être exécutées à la fois. Pour vérifier w

select value from dba_scheduler_global_attribute
where attribute_name='MAX_JOB_SLAVE_PROCESSES';

Vérifiez ensuite le nombre de tâches en cours d'exécution

select count(*) from dba_scheduler_running_jobs;

Si tel est le problème, vous pouvez augmenter le nombre ou simplement le désactiver en utilisant

exec dbms_scheduler.set_scheduler_attribute('max_job_slave_processes',null)

3) les sessions peuvent être trop faibles

4) Vérifiez si le planificateur a été désactivé

select value from dba_scheduler_global_attribute where attribute_name='SCHEDULER_DISABLED'

Si cette requête renvoie TRUE, vous pouvez résoudre ce problème en utilisant SQL> exec dbms_scheduler.set_scheduler_attribute('scheduler_disabled','false');