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 :

Historique des commandes sql*plus


Sujet :

Administration Oracle

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 27
    Points : 13
    Points
    13
    Par défaut Historique des commandes sql*plus
    Bonjour,

    J'ai perdu un fichier .sql important, le seul moyen pour récupérer le contenu de ce fichier est de visualiser l'historique des commandes sql*plus à une date donnée. J'ai utilisé la commande suivant mais elle ne retourne que les requêtes de la date courante.

    Est-ce possible de ré-afficher une requête lancée à une date antérieure?
    Est-ce quelqu'un à une idée?
    Je suis sur oracle 10g express Edition

    Merci

  2. #2
    En attente de confirmation mail
    Inscrit en
    Mars 2010
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 205
    Points : 230
    Points
    230
    Par défaut
    L'historique des commandes dans la shared pool a une taille limitée, il se peut que la requête que tu cherches ne soit plus dans la sqlarea. Je te conseille de chercher plutôt dans v$sqlarea.

    select * from v$sqlarea where sql_text like '......', tu récupères les champs address et hash_value puis tu cherches dans v$sqltext_with_newlines avec ces critères en clause where.

    Enfin, si ta requête y est encore...

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 27
    Points : 13
    Points
    13
    Par défaut
    merci pour la réponse,mais ces 2 tables ne contiennent que les requetes précédemment lancées.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SQL> select * from v$sqltext_with_newlines where ADDRESS='6E13A0CC' and HASH_VALUE='392389981';
     
    ADDRESS  HASH_VALUE SQL_ID        COMMAND_TYPE      PIECE SQL_TEXT
    -------- ---------- ------------- ------------ ---------- ----------------------------------------------------------------
    6E13A0CC  392389981 fuqs1q0bq6tax            3          1 '
    6E13A0CC  392389981 fuqs1q0bq6tax            3          0 select * from v$sqlarea where UPPER(sql_text) like '%TAX_PAYER1%
     
    SQL> select * from v$sqltext_with_newlines where ADDRESS='6AA2FE68' and HASH_VALUE='1786506485';
     
    ADDRESS  HASH_VALUE SQL_ID        COMMAND_TYPE      PIECE SQL_TEXT
    -------- ---------- ------------- ------------ ---------- ----------------------------------------------------------------
    6AA2FE68 1786506485 dddyrb1p7rv7p            3          1 ike '%TAX_PAYER1%'
    6AA2FE68 1786506485 dddyrb1p7rv7p            3          0 select ADDRESS,HASH_VALUE from v$sqlarea where UPPER(sql_text) l
    Est-ce vous avez une autre idée? merci

  4. #4
    En attente de confirmation mail
    Inscrit en
    Mars 2010
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 205
    Points : 230
    Points
    230
    Par défaut
    Non, ce que tu vois n'est pas un historique, mais un cache mémoire pour l'exécution des requêtes. Si ta requête n'est pas là, c'est qu'elle a été déchargée de la mémoire, elle n'est stockée nulle part ailleurs dans oracle.

    A moins bien sûr que ce soit une procédure (ou fonction ou package) que tu avais enregistrée en base.

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 27
    Points : 13
    Points
    13
    Par défaut
    Merci ,
    oui c'était ma faute , j'ai du faire une procédure au lieu d'un simple fichier sql.

  6. #6
    En attente de confirmation mail
    Inscrit en
    Mars 2010
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 205
    Points : 230
    Points
    230
    Par défaut
    Bah, tout le monde fait des erreurs, j'ai moi-même flingué quelques bases !
    C'est même en faisant des erreurs qu'on apprend...

  7. #7
    Membre éprouvé Avatar de 13thFloor
    Homme Profil pro
    DBA Oracle freelance
    Inscrit en
    Janvier 2005
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France

    Informations professionnelles :
    Activité : DBA Oracle freelance

    Informations forums :
    Inscription : Janvier 2005
    Messages : 670
    Points : 945
    Points
    945
    Par défaut
    Si ta requête a consommé plus que les seuils mini des collectes awr/statspack, tu peux peut être récupérer ta requête avec sprepsql (9i) ou awrrpt (10g) si tu connais la période où tu as exécuté la requête.

  8. #8
    Membre à l'essai
    Inscrit en
    Février 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 27
    Points : 13
    Points
    13
    Par défaut
    bonjour,

    J'étais obligé de refaire ma requête, et je l'ai déjà terminé mais ce que vous proposez est très intéressant. Je suis sur 10g express.
    J'ai pas bien compris le fonctionnement de ces collectes.

    Ces collectes sont elles des fichiers, des tables ou des views . Comment ferais-je pour utiliser ces collectes si je connais la date d'exécution .

    merci

Discussions similaires

  1. Historique des commandes
    Par pdelorme dans le forum Administration
    Réponses: 5
    Dernier message: 12/09/2008, 10h05
  2. Historique des commandes SQL
    Par andrianiaina dans le forum Toad
    Réponses: 8
    Dernier message: 25/10/2007, 16h25
  3. [8i][sqlplus 3.3] historique des commandes ?
    Par sala|-| dans le forum Oracle
    Réponses: 1
    Dernier message: 09/12/2006, 14h27
  4. Les commandes SQL*Plus manipulant les fichiers
    Par Maria1505 dans le forum Sql*Plus
    Réponses: 3
    Dernier message: 08/11/2006, 11h30
  5. Réponses: 9
    Dernier message: 11/09/2006, 16h22

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