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 :

Standby Database/ Différences entre RECOVER NODELAY et RECOVER UNTIL CHANGE


Sujet :

Administration Oracle

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2003
    Messages
    125
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2003
    Messages : 125
    Points : 102
    Points
    102
    Par défaut Standby Database/ Différences entre RECOVER NODELAY et RECOVER UNTIL CHANGE
    Bonjour,

    J'ai une configuration Data Guard avec deux bases (version 10.2.0.3), une base principale et base standby.
    La réplication entre les deux bases se fait avec un "délai" de 60 minutes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=DBSTDBY LGWR DELAY=60 SYNC AFFIRM' SCOPE=BOTH;
    Cela fonctionne très bien.
    Ma question concerne l'activation de la base standby. En effet, avant d'activer la base, il faut appliquer tous les archived logs reçus par la base standby.
    Il y a deux façons :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE NODELAY;
    or
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE UNTIL CHANGE lastchange;
    Or j'ai remarqué que le RECOVER avec l'option NODELAY est plus rapide qu'avec l'option UNTIL CHANGE.
    Est-ce qu'il y a une explication à cela?

  2. #2
    Membre régulier
    Inscrit en
    Novembre 2003
    Messages
    125
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2003
    Messages : 125
    Points : 102
    Points
    102
    Par défaut
    Maintenant que tout le monde est rentré de vacances, peut-être aurais-je une réponse?

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2005
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 38
    Points : 43
    Points
    43
    Par défaut
    Le NODELAY on lui demande de faire un recover sur tout ce qu'il a recu en archivelogs, même si le delay est positionné.
    le until change on lui demande de faire un recover jusqu'à un SCN donné.

  4. #4
    Membre régulier
    Inscrit en
    Novembre 2003
    Messages
    125
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2003
    Messages : 125
    Points : 102
    Points
    102
    Par défaut
    Citation Envoyé par mildiou51 Voir le message
    Le NODELAY on lui demande de faire un recover sur tout ce qu'il a recu en archivelogs, même si le delay est positionné.
    le until change on lui demande de faire un recover jusqu'à un SCN donné.
    Je suis d'accord mais ça n'explique pas pourquoi le NODELAY est plus rapide que le UNTIL CHANGE.

  5. #5
    Membre actif
    Inscrit en
    Juillet 2007
    Messages
    357
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 357
    Points : 280
    Points
    280
    Par défaut
    Je suis d'accord mais ça n'explique pas pourquoi le NODELAY est plus rapide que le UNTIL CHANGE.
    Faudrai demander a un developpeur oracle, sinon tu peux imaginer que a chaque fois qu il applique un log coorespondant a un scn il verifie ensuite si c est bien le scn du until que tu a demander et donc que ca prend plus de temps.

    Sinon je comprend pas pourquoi tu as besoin de ces 2 commandes car mis a part le Delay = 60 j ai egalement un dataguard avec LGWR/Affirm et ces parametres utilise des standby redoLog pour le transfer de Log et si je tape

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select max(sequence#),applied from v$archived_log group by applied
    Sur ma base de standby j ai toujours applied a yes et max(sequence#) qui vaut le max sequence# de la base primaire.

  6. #6
    Membre régulier
    Inscrit en
    Novembre 2003
    Messages
    125
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2003
    Messages : 125
    Points : 102
    Points
    102
    Par défaut
    Citation Envoyé par ZashOne Voir le message
    Sinon je comprend pas pourquoi tu as besoin de ces 2 commandes car mis a part le Delay = 60 j ai egalement un dataguard avec LGWR/Affirm et ces parametres utilise des standby redoLog pour le transfer de Log et si je tape

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select max(sequence#),applied from v$archived_log group by applied
    Sur ma base de standby j ai toujours applied a yes et max(sequence#) qui vaut le max sequence# de la base primaire.
    Ben c'est justement le principe du DELAY : définir un décalage en minutes entre la base primaire et la base standby pour éviter la propagation immédiate d'une corruption de la base primaire.
    Du coup, j'ai toujours au moins un log non appliqué dans la vue v$archived_log de ma base standby.

  7. #7
    Membre actif
    Inscrit en
    Juillet 2007
    Messages
    357
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 357
    Points : 280
    Points
    280
    Par défaut
    interessant ton cas , j ai jamais utilisr le delay, mais si je comprend bien, quand tu en defini un , les archive log ne sont pas applique mais bien transmis et tu peux forcer avec une commande ALTER....

  8. #8
    Membre régulier
    Inscrit en
    Novembre 2003
    Messages
    125
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Novembre 2003
    Messages : 125
    Points : 102
    Points
    102
    Par défaut
    Citation Envoyé par ZashOne Voir le message
    interessant ton cas , j ai jamais utilisr le delay, mais si je comprend bien, quand tu en defini un , les archive log ne sont pas applique mais bien transmis et tu peux forcer avec une commande ALTER....
    C'est cela même!

Discussions similaires

  1. différences entre Warm Standby et Hot Standby
    Par fgalves dans le forum Débuter
    Réponses: 2
    Dernier message: 04/12/2010, 19h23
  2. Différence entre DATABASE et SCHEMA
    Par lightstring4 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 03/12/2009, 11h21
  3. Problème recover automatic standby database
    Par tijocanard dans le forum Administration
    Réponses: 2
    Dernier message: 16/06/2009, 09h05
  4. Différence entre la duplication et la standby database
    Par tchalkost dans le forum Oracle
    Réponses: 7
    Dernier message: 24/08/2006, 20h33
  5. [newbeee] différence entre database front-end et backend
    Par mlequim dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 20/01/2006, 12h40

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