Dba jobs
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Type | Script SQL*Plus de diagnostic |
| Domaine | Administration (planification de traitements) |
Dba jobs liste tous les jobs enregistrés via l'ancien mécanisme DBMS_JOB (vue dba_jobs) : identifiant, planification, dernière exécution, échecs et statut "cassé" (broken).
DBMS_JOB est l'ordonnanceur historique d'Oracle (pré-10g). Depuis Oracle 10g, DBMS_SCHEDULER (vues dba_scheduler_jobs) est le mécanisme recommandé, plus riche (fenêtres de maintenance, chaînes de jobs, contraintes de ressources...). dba_jobs reste néanmoins pertinent tant que des jobs legacy DBMS_JOB existent encore dans la base — ce qui est fréquent sur des applications anciennes migrées de version en version sans réécriture de leur planification.
Script
SET TERMOUT OFF
COLUMN current_instance NEW_VALUE current_instance NOPRINT
SELECT RPAD(instance_name, 17) current_instance FROM v$instance;
SET TERMOUT ON
PROMPT
PROMPT +------------------------------------------------------------------------+
PROMPT | Report : Oracle Jobs |
PROMPT | Instance : ¤t_instance |
PROMPT +------------------------------------------------------------------------+
SET ECHO OFF
SET FEEDBACK 6
SET HEADING ON
SET LINESIZE 180
SET PAGESIZE 50000
SET VERIFY OFF
COLUMN job FORMAT 9999999 HEADING 'Job ID'
COLUMN username FORMAT a20 HEADING 'User'
COLUMN what FORMAT a30 HEADING 'What'
COLUMN next_date HEADING 'Next Run Date'
COLUMN interval FORMAT a30 HEADING 'Interval'
COLUMN last_date HEADING 'Last Run Date'
COLUMN failures HEADING 'Failures'
COLUMN broken FORMAT a7 HEADING 'Broken?'
SELECT
job
, log_user username
, what
, TO_CHAR(next_date, 'DD-MON-YYYY HH24:MI:SS') next_date
, interval
, TO_CHAR(last_date, 'DD-MON-YYYY HH24:MI:SS') last_date
, failures
, broken
FROM dba_jobs;
Colonnes / sortie
- Job ID — identifiant numérique du job.
- User — propriétaire (le job s'exécute avec ses privilèges).
- What — bloc PL/SQL exécuté à chaque déclenchement.
- Next Run Date / Last Run Date — prochaine et dernière exécution.
- Interval — expression de rappel (fonction date renvoyant la prochaine exécution, ex.
SYSDATE + 1). - Failures — nombre d'échecs consécutifs.
- Broken? — à
Y, le job n'est plus automatiquement relancé par le scheduler (typiquement après 16 échecs consécutifs) ; il faut le "réparer" viaDBMS_JOB.BROKEN(job, FALSE)après avoir corrigé la cause de l'échec.