Statement per cancellare un JOB

.

Con l’articolo statement per cancellare un JOB, forniamo uno statement che permette di rimuovere definitivamente un JOB dal database Oracle.

La cancellazione avviene attraverso il package di sistema dbms_ijob con l’opzione remove.

Inoltre il package dbms_ijob a differenza del package dbms_job, permette di rimuovere il JOB che appartiene ad un altro utente.

Rimozione del JOB:

exec dbms_ijob.remove(&JOB);

Statement per abilitare un JOB in BROKEN

.

Con l’articolo Statement per abilitre un JOB in BROKEN, forniamo uno statement che permette di abilitare JOB dallo stato di BROKEN. Ossia lo riabilitiamo con la schedulazione programmata in fase di creazione.

Quando un JOB schedulato nel database Oracle incontra un fallimento, viene rieseguito dopo 1 minuto.
Se fallisce viene eseguito dopo 2 minuti.
Se fallisce viene di nuovo eseguito dopo 4 minuti e cosi via, fino ad arrivare al tredicesimo tentativo.

Questo permette la fine di questo ciclo e mette il JOB nello stato di BROKEN.

Nel seguente articolo forniamo uno statement per abilitare un JOB dallo stato di BROKEN.

Inoltre il package dbms_ijob a differenza del package dbms_job, permette di rimuovere il JOB che appartiene ad un altro utente.

Rimozione del JOB dallo stato di BROKEN:

exec dbms_ijob.broken (&JOB,FALSE);

Statement per impostare un JOB in BROKEN

.

Con l’articolo Statement per impostare un JOB in BROKEN, forniamo uno statement che permette di bloccare la normale schedulazione di un determinato JOB.

Quando un JOB schedulato nel database Oracle incontra un fallimento, il JOB viene rieseguito dopo 1 minuto. Se fallisce viene eseguito dopo 2 minuti. Se fallisce viene di nuovo eseguito dopo 4 minuti e cosi via, fino ad arrivare al tredicesimo tentativo, il quale termina questo ciclo e mette il JOB nello stato di BROKEN.

Può capitare che per qualche motivo vada bloccata la schedulazione di un determinato JOB Oracle.

Nell'articolo forniamo uno Statement per impostare un JOB in BROKEN, il quale vi permetterà di bloccare la normale schedulazione di un JOB.

Inoltre il package dbms_ijob a differenza del package dbms_job, permette di rimuovere il JOB che appartiene ad un altro utente.

exec dbms_ijob.broken (&JOB,TRUE);

Query per controllare i JOB Running

.

Nell’articolo Query per controllare i JOB Running, forniamo una query che permette di identificare i JOB in esecuzione di tutti gli utenti del database.

Inoltre abbiamo la possibilità di identificare il SID della sessione associata, con cui possiamo approfondire le analisi del caso.

Query per controllare i JOB Running:

select /*+ rule */ * from dba_jobs_running;

Query per controllare lo stato del JOB

.

Con l’articolo Query per controllare lo stato del JOB,
forniamo uno statement per individuare informazioni sui JOB
schedulati nel database.

Selezioniamo il numero del JOB,
l’utente con cui è stato schedulato e
l’utente proprietario.

Inoltre selezioniamo la data e l’orario dell’ultima e
della prossima esecuzione.

Infine selezioniamo il numero di fallimenti, lo stato di BROKEN e il codice o la procedura schedulata.

Quindi recuperiamo le informazioni
dalla vista DBA_JOBS
e i filtriamo i record per numero di JOB.

Controllo stato del JOB:

set lines 200 pages 999
col log_user format a15
col priv_user format a15
col schema_user format a15
col last_run format a15
col next_run format a15
col what format a60
col fails format 999
select job
, log_user
, priv_user
, schema_user
, to_char(last_date, 'hh24:mi dd/mm/yy') last_run
, to_char(next_date, 'hh24:mi dd/mm/yy') next_run
, failures fails
, broken
, substr(what, 1, 60) what
from dba_jobs
where job=&job
order by 4;

Wordpress Social Share Plugin powered by Ultimatelysocial