Initialiser les paramètres associés job_queue_processes
alter system set job_queue_processes=39 scope=spfile; //La valeur maximale ne peut pas dépasser 1000 ; job_queue_interval = 10 //Planification de la fréquence d'actualisation des tâches en secondes ;
job_queue_process représente le nombre de tâches qu'Oracle peut exécuter simultanément, qui peuvent être transmises via l'instruction
afficher le paramètre job_queue_process ;
Pour afficher la valeur de job_queue_process dans Oracle. Lorsque la valeur de job_queue_process est 0, cela signifie arrêter tous les travaux Oracle. Vous pouvez transmettre l'instruction.
ALTER SYSTEM SET job_queue_processes = 10 ;
Pour ajuster le travail qui démarre Oracle.
Vues associées :
dba_jobs
all_jobs
utilisateur_jobs
dba_jobs_running contient des informations sur les tâches en cours d'exécution
------------------------
Syntaxe de soumission du travail :
commencer
sys.dbms_job.submit(travail => :travail,
quoi => 'P_CLEAR_PACKBAL;',
next_date => to_date('04-08-2008 05:44:09', 'jj-mm-aaaa hh24:mi:ss'),
intervalle => 'sysdate+ 1/360');
commettre;
fin;
/
------------------------
Créer un TRAVAIL
numéro de numéro de travail variable ;
commencer
dbms_job.submit(:jobno, 'P_CRED_PLAN;',SYSDATE,'SYSDATE+1/2880',TRUE);
commettre;
Exécuter une tâche
SQL> commencer
dbms_job.run(:job1);
fin;
/
Supprimer le TRAVAIL
SQL> commencer
dbms_job.remove(:job1);
fin;
/
DBA_JOBS
======================================== ==
Champ (colonne) Type Description
JOB NUMBER Le numéro d'identification unique de la tâche
LOG_USER VARCHAR2(30) L'utilisateur qui a soumis la tâche
PRIV_USER VARCHAR2(30) Autorisations de tâches attribuées par l'utilisateur
SCHEMA_USER VARCHAR2(30) Mode utilisateur pour les tâches d'analyse
LAST_DATE DATE La dernière fois que la tâche a été exécutée avec succès
LAST_SEC VARCHAR2(8) Heure, minutes et secondes de la date last_date au format HH24:MM:SS
THIS_DATE DATE L'heure de début de la tâche en cours d'exécution, ou null si aucune tâche n'est en cours d'exécution.
THIS_SEC VARCHAR2(8) Heure, minutes et secondes de la date this_date au format HH24:MM:SS
NEXT_DATE DATE La prochaine fois que la tâche planifiée sera exécutée
NEXT_SEC VARCHAR2(8) Heure, minutes et secondes de la date next_date au format HH24:MM:SS
TOTAL_TIME NUMBER Temps total requis pour l'exécution de la tâche, en secondes
Paramètre d'indicateur BROKEN VARCHAR2(1), Y indique que la tâche est interrompue et ne sera pas exécutée à l'avenir.
INTERVAL VARCHAR2(200) Expression utilisée pour calculer la prochaine exécution
NUMÉRO D'ÉCHECS Nombre de fois où la tâche a été exécutée sans succès.
WHAT VARCHAR2(2000) Bloc PL/SQL qui exécute la tâche
CURRENT_SESSION_LABEL RAW MLSLABEL La clé de session Oracle approuvée pour cette tâche
CLEARANCE_HI RAW MLSLABEL L'écart Oracle maximal auquel la tâche peut faire confiance
CLEARANCE_LO RAW MLSLABEL L'écart minimum Oracle auquel la tâche peut faire confiance
NLS_ENV VARCHAR2(2000) Paramètres de session NLS pour l'exécution de la tâche
MISC_ENV RAW(32) Quelques autres paramètres de session pour l'exécution de la tâche
-------------------------
Description Valeur du paramètre INTERVALLE
'TRUNC(SYSDATE + 1)' tous les jours à minuit
Tous les matins à 8h30 'TRUNC(SYSDATE + 1) + (8*60+30)/(24*60)'
Tous les mardis à 12h 'NEXT_DAY(TRUNC(SYSDATE ),''TUESDAY'' ) + 12/24'
'TRUNC(LAST_DAY(SYSDATE ) + 1)' à minuit le premier jour de chaque mois
23h00 le dernier jour de chaque trimestre 'TRUNC(ADD_MONTHS(SYSDATE + 2/24, 3 ), 'Q' ) -1/24'
Tous les samedis et dimanches à 6h10 'TRUNC(LEAST(NEXT_DAY(SYSDATE, ''SATURDAY"), NEXT_DAY(SYSDATE, "SUNDAY"))) + (6×60+10)/(24×60)'
-------------------------
1 : Exécuter chaque minute
Intervalle => TRUNC(sysdate,'mi') + 1/ (24*60)
2 : Exécuter régulièrement chaque jour
Par exemple : exécuté à 1 heure du matin tous les jours
Intervalle => TRUNC(sysdate) + 1 +1/ (24)
3 : Exécution programmée chaque semaine
Par exemple : exécuté tous les lundis à 1h du matin
Intervalle => TRUNC(next_day(sysdate,'Monday'))+1/24
4 : Exécution régulière chaque mois
Par exemple : Exécuter à 1 heure du matin le 1er de chaque mois
Intervalle =>TRUNC(LAST_DAY(SYSDATE))+1+1/24
5 : Exécution régulière chaque trimestre
Par exemple, il est exécuté à 1 heure du matin le premier jour de chaque trimestre.
Intervalle => TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 1/24
6 : Exécution régulière tous les six mois
Par exemple : tous les 1er juillet et 1er janvier à 1h du matin.
Intervalle => ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/24
7 : Exécuté régulièrement chaque année
Par exemple : Exécuté à 1h du matin le 1er janvier de chaque année
Intervalle =>ADD_MONTHS(trunc(sysdate,'yyyy'),12)+1/24
Cet article provient du blog CSDN Veuillez indiquer la source lors de la réimpression : http://blog.csdn.net/mzwang123/archive/2009/12/22/5053476.aspx.
-