IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration Oracle Discussion :

[SCHEDULER] lancer un script local et recupérer la STDOUT


Sujet :

Administration Oracle

  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2006
    Messages
    467
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 467
    Par défaut [SCHEDULER] lancer un script local et recupérer la STDOUT
    Bonjour,

    On souhaite planifier un job Oracle qui va lancer une script bash.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    BEGIN
      dbms_scheduler.create_job( 
        job_name => '"SYSTEM"."LANCEMENT_SAUVEGARDE_RMAN"',
        job_type => 'EXECUTABLE',
        job_action => '/backup/scripts/backup_rman.sh',
        repeat_interval => 'FREQ=DAILY;BYHOUR=5;BYMINUTE=0;BYSECOND=0',
        start_date => to_timestamp_tz('2019-01-21 21:30', 'YYYY-MM-DD HH24:MI'),
        job_class => '"DEFAULT_JOB_CLASS"',
        comments => 'Sauvegarde rman de la base',
        auto_drop => FALSE,
        number_of_arguments => 3,
        enabled => FALSE
      );
     dbms_scheduler.set_job_argument_value( 
        job_name => '"SYSTEM"."LANCEMENT_SAUVEGARDE"', 
        argument_position => 1, 
        argument_value => '-d=BDNAME'
      ); 
     dbms_scheduler.set_job_argument_value( 
        job_name => '"SYSTEM"."LANCEMENT_SAUVEGARDE"', 
        argument_position => 2, 
        argument_value => '-t=level_0'
      ); 
     dbms_scheduler.set_job_argument_value( 
        job_name => '"SYSTEM"."LANCEMENT_SAUVEGARDE"', 
        argument_position => 3, 
        argument_value => '-c=CATALOGUE'
      ); 
      dbms_scheduler.enable( '"SYSTEM"."LANCEMENT_SAUVEGARDE_RMAN"' ); 
    END;
    /
    Savez-vous si il est possible de récupérer la STDOUT de l'exécution du script local /backup/scripts/backup_rman.sh.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /backup/scripts/backup_rman.sh 1>/tmp/stdout.log 2>&1
    Merci pour votre aide,

    Matt

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 175
    Par défaut
    Bonjour,

    Tu peux retrouver le nom de la log stdout de ton job en consultant la vue ALL_SCHEDULER_JOB_RUN_DETAILS. La colonne EXTERNAL_LOG_ID donne le début du nom du fichier log_xxxx_yyyy, il suffit d'ajouter le suffixe _stdout.
    Normalement le fichier se trouve dans $ORACLE_HOME/scheduler/log.

  3. #3
    Membre éclairé
    Inscrit en
    Octobre 2006
    Messages
    467
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 467
    Par défaut
    Bonjour,

    Merci pour ces informations.

    Mais je n'ai pas la colonne dans la vue que tu me décris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Nom               NULL ? Type                         
    ----------------- ------ ---------------------------- 
    LOG_ID                   NUMBER                       
    LOG_DATE                 TIMESTAMP(6) WITH TIME ZONE  
    OWNER                    VARCHAR2(30)                 
    JOB_NAME                 VARCHAR2(65)                 
    JOB_SUBNAME              VARCHAR2(65)                 
    STATUS                   VARCHAR2(30)                 
    ERROR#                   NUMBER                       
    REQ_START_DATE           TIMESTAMP(6) WITH TIME ZONE  
    ACTUAL_START_DATE        TIMESTAMP(6) WITH TIME ZONE  
    RUN_DURATION             INTERVAL DAY(3) TO SECOND(0) 
    INSTANCE_ID              NUMBER                       
    SESSION_ID               VARCHAR2(30)                 
    SLAVE_PID                VARCHAR2(30)                 
    CPU_USED                 INTERVAL DAY(3) TO SECOND(2) 
    CREDENTIAL_OWNER         VARCHAR2(65)                 
    CREDENTIAL_NAME          VARCHAR2(65)                 
    DESTINATION_OWNER        VARCHAR2(128)                
    DESTINATION              VARCHAR2(128)                
    ADDITIONAL_INFO          VARCHAR2(4000)

    Et dans le dossier de la ORACLE_HOME, je n'ai pas de fichier.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [oracle@oraclelog]$ ll $ORACLE_HOME/scheduler/log
    total 0
    Il n'y a pas moyen de définir directement dans le JOB la STDOUT?


    Matt

  4. #4
    Membre Expert
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 175
    Par défaut
    Au temps pour moi c'est dans la colonne ADDITIONAL_INFO que ce sera indiqué. Cette colonne te dira aussi les erreurs le cas échéant.

Discussions similaires

  1. lancer un script shell et recupérer les résultats via script python
    Par GoldenEyes dans le forum Général Python
    Réponses: 2
    Dernier message: 04/09/2008, 18h15
  2. [Système] Lancer un script Perl
    Par ebaynaud dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 14/10/2004, 14h54
  3. Réponses: 13
    Dernier message: 01/10/2004, 14h03
  4. [web] Lancer un script en arrière plan
    Par gracouille dans le forum Web
    Réponses: 4
    Dernier message: 27/05/2004, 16h37
  5. [web] Lancer un script CGI
    Par Calou20 dans le forum Web
    Réponses: 10
    Dernier message: 01/03/2004, 16h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo