Il Database Oracle offre un metodo molto robusto , potente e personalizzabile per la pianificazione dei processi . A livello di base , un lavoro Oracle è un blocco di PL /SQL , Oracle linguaggio di programmazione , codice che è pianificato per l'esecuzione in un momento particolare . Orari di lavoro può essere molto complicato e il codice gestito per un lavoro di Oracle possono essere di base come istruzione di inserimento di una riga o di una procedura PL /SQL linea 10.000. Per il bene di questo esempio , le specifiche del codice in corso di esecuzione PL /SQL è irrilevante in quanto affronterà determinare la causa del mancato lavoro Oracle . Cose che ti serviranno
Oracle 11g Databaase
SYSDBA permessi
Show More Istruzioni
1
utilizzare il costruito nel pacchetto DBMS_SCHEDULER per creare il lavoro. Partendo dal presupposto che l'effetto desiderato è quello di eseguire la procedura di apps.do_something ogni giorno alle 02:00 si sarebbe simile a questa :
BEGIN
DBMS_SCHEDULER.CREATE_JOB (
job_name = > ' example_job ' , Stati
job_type = > ' STORED_PROCEDURE ' , Stati
job_action = > ' apps.do_something ' , Stati
data_iniziale = > '20 -DEC -10 02.00.00 PM ' , Stati
repeat_interval = >' FREQ = DAILY ,
commenti
= > ' commenti lavoro qui ');
END; < br >
/
2
visualizzare il job log per il successo o messaggi di errore. Per impostazione predefinita , Oracle registra lo stato dei lavori in vista del dizionario dati DBA_SCHEDULER_JOB_LOG . In alternativa , se il lavoro è specifico per l'utente corrente , USER_SCHEDULER_JOB_LOG può essere interrogato . Una query di esempio di questa visione è la seguente :
SELEZIONA timestamp , job_name , job_class , funzionamento , stato dal USER_SCHEDULER_JOB_LOG dove job_name = ' example_job ';
3
vista dettagliata informazioni sul lavoro . Per i lavori indicati con l'operazione definita come RUN , RETRY_RUN o RECOVERY_RUN nella vista DBA /USER_SCHEDULED_JOB_LOG , Oracle fornisce ulteriori dettagli in USER_SCHEDULED_JOB_RUN_DETAILS o DBA_SCHEDULED_JOB_RUN_DETAILS . Per esempio :
SELEZIONA TIMESTAMP , job_name , stato , ADDITIONAL_INFO
DA DOVE user_scheduler_job_run_details job_name = ' example_job '