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

Oracle Discussion :

[DBA] Récuperer données suite à commit intempestif


Sujet :

Oracle

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 35
    Points
    35
    Par défaut [DBA] Récuperer données suite à commit intempestif
    Bonjour à tous,

    Je viens de faire une boulette

    J'ai fait un DELETE d'une table et dans la foulée un COMMIT.

    Je me suis rendu compte après le COMMIT que j'avais oublié de mettre une clause WHERE.

    Comment pourrai-je récupérer, le plus simplement possible, les données de cette table sachant que m'a base est en mode ARCHIVELOG et que ma table contenait à peu près 500 000 enregistrements ?

    Merci pour vos réponses.

  2. #2
    Futur Membre du Club
    Inscrit en
    Juillet 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    La solution radicale : restauration + RECOVER
    La solution pratique : si Oracle 9i et undo_retention positionné : Flashback Query
    La solution "système-D" : récupération des données à partir d'un ancien dump ou d'une ancienne copie de la base...

    En tout cas, bon courage.

  3. #3
    Membre expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Points : 3 199
    Points
    3 199
    Par défaut
    Oups...
    si vous n'êtes pas le seul sur la base, la solutution restau+recover until time n'est pas envisageable car dans ce cas, vous risqueriez de perdre également les données des autres utilisateurs...
    Et il ne reste guère que le flashback_query... ou la sauvegarde ...

    Enfin, voyez le bon côté des choses : ça aurait pu arriver un vendredi à 17h55 ! :-)

  4. #4
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073

  5. #5
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    Citation Envoyé par LeoAnderson
    Enfin, voyez le bon côté des choses : ça aurait pu arriver un vendredi à 17h55 ! :-)
    ou un truncate

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 35
    Points
    35
    Par défaut
    Merci pour vos réponses,

    Comme l'a dit si justement LeoAnderson, un arrêt de la base et une restauration + RECOVERY n'est pas possible vu que je ne suis pas seul sur la base.

    Comme me le suggère dba.oracle.or, j'ai regarder la doc concernant l'utilisation du flashback Query sour oracle 9i. Le mode dans lequel je suis est le suivant:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SELECT name, value
    from v$parameter t
    where t.NAME in ('undo_management','undo_retention')
     
    NAME                                                             VALUE
    ---------------------------------------------------------------- ------
    undo_management                                                  MANUAL
    undo_retention                                                   900
    Puis-je quand même essayer d'utiliser le flashback Query ?

    Merci de votre réponse ?

  7. #7
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    oui mais VITE !!!

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 35
    Points
    35
    Par défaut
    Ouf !

    J'ai réussi à tout récupérer grâce au Flashback Query sou Oracle 9i : cette fonctionnalité est trop cool.

    Merci pour votre aide

  9. #9
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut

  10. #10
    Membre émérite Avatar de nuke_y
    Profil pro
    Indépendant en analyse de données
    Inscrit en
    Mai 2004
    Messages
    2 076
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant en analyse de données

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 076
    Points : 2 370
    Points
    2 370
    Par défaut
    Il paraît que TOUS les dba ont au moins une fois effacé une base en prod par erreur. Vous confirmez ?
    Il vaut mieux monopoliser son intelligence sur des bêtises que sa bêtise sur des choses intelligentes.

  11. #11
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    non pas pour l'instant

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 496
    Points : 522
    Points
    522
    Par défaut
    il est comme son p'tit chat sur son avatar.
    Il dit " mon Dieu, faite que je ne fasse pas cette erreur"

  13. #13
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    même pas peur... un bon DBA est un DBA qui se sort de toutes les situations. Comme dirait un astucieux personnage : "j'aime les plans qui se déroulent sans accroc"

  14. #14
    Rédacteur

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 320
    Points : 3 798
    Points
    3 798
    Par défaut
    Tout les DBA font des erreurs , peut être sont ils juste un peu mieux dotés pour récupérer leurs bêtises

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Affichage de données suite à un update
    Par Sandara dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 20/06/2006, 12h38
  2. [PHP] Recuperer une donnée suite a un webservice
    Par budiste dans le forum XML/XSL et SOAP
    Réponses: 12
    Dernier message: 10/04/2006, 22h11
  3. perte de données suite plantage
    Par patbeautifulday1 dans le forum Access
    Réponses: 1
    Dernier message: 21/02/2006, 16h12
  4. Cohérence de données et commit
    Par JanLai dans le forum Oracle
    Réponses: 4
    Dernier message: 29/12/2005, 14h07
  5. Utiliser le C pour récuperer données d'un capteur
    Par Malek_BAKLOUTI dans le forum C
    Réponses: 12
    Dernier message: 05/10/2005, 10h40

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