Un basculement est un événement non planifié qui suppose que la base de données principale est perdue. La base de données de secours est convertie en base de données principale immédiatement après l'application de tous les journaux redo principaux disponibles. Vous pouvez utiliser Flashback et Oracle Data Guard Broker pour rétablir la base de données principale d'origine en tant que base de secours physique.
Après un basculement, la base de données principale d'origine doit être rétablie en tant que base de secours physique. La réinitialisation de la base de données principale d'origine est plus facile lorsque la base de données Flashback et Oracle Data Guard Broker sont activés.
L'étape 3 de cet exemple arrête la base de données principale sur site pour imiter une panne non planifiée. Cet exemple utilise Oracle Data Guard Broker pour rétablir la base de données principale.
- Base de données sur site :
db1
- instance de base de données de secours physique dans le cloud :
db1_phx3g7
- Dans l'Oracle Exadata Database Machine principal sur site, connectez-vous en tant que
sysdba
- Affichez la configuration de la base de données sur site.
DGMGRL> show configuration;
La sortie devrait ressembler à ce qui suit :
Configuration - onpremexadr
Protection Mode: MaxPerformance
Members:
db1 - Primary database
db1_phx3g7 - Physical standby database
Warning: ORA-16809: multiple warnings detected for the member
Fast-Start Failover: Disabled
Configuration Status:
WARNING (status updated 36 seconds ago)
- Connectez-vous à l'instance de base de données principale sur site et effectuez un arrêt pour imiter une panne non planifiée.
bash-4.2$ sqlplus / as sysdba
SQL> shutdown abort;
La sortie devrait ressembler à ce qui suit :
ORACLE instance shut down.
- Dans Oracle Database Exadata Cloud Service, affichez la configuration de l'instance de base de données.
DGMGRL> show configuration;
La sortie devrait ressembler à ce qui suit :
Configuration - onpremexadr
Protection Mode: MaxPerformance
Members:
db1 - Primary database
Error: ORA-12514: TNS:listener does not currently know of service requested in
connect descriptor
db1_phx3g7 - Physical standby database
Fast-Start Failover: Disabled
Configuration Status:
ERROR (status updated 0 seconds ago)
- Lancez le basculement de l'instance Oracle Database Exadata Cloud Service.
DGMGRL> > failover to db1_phx3g7;
La sortie devrait ressembler à ce qui suit :
Performing failover NOW, please wait...
Failover succeeded, new primary is "db1_phx3g7"
- Affichez la configuration de l'instance de base de données dans Oracle Database Exadata Cloud Service.
DGMGRL> show configuration;
La sortie devrait ressembler à ce qui suit :
Configuration - onpremexadr
Protection Mode: MaxPerformance
Members:
db1_phx3g7 - Primary database
Warning: ORA-16809: multiple warnings detected for the member
db1 - Physical standby database (disabled)
ORA-16661: the standby database needs to be reinstated
Fast-Start Failover: Disabled
Configuration Status:
WARNING (status updated 28 seconds ago)
- Sur le site Oracle Exadata Database Machine (db1), qui est maintenant en veille, démarrez l'instance sur un noeud.
$srvctl start instance -db db1 -instance db11
- Utilisez la commande
reinstate database pour faire de la base de secours principale désactivée la base de données de secours. Un reinstate fait de l'ancienne base de données principale désactivée la base de secours, ce qui lui permet de recevoir les données redo de la nouvelle base de données principale (la base de données de secours activée).
DGMGRL> reinstate database db1;
La sortie devrait ressembler à ce qui suit :
Reinstating database
"db1", please wait...Reinstatement of database "db1" succeeded
- Affichez la configuration de l'instance de base de données sur site.
DGMGRL> show configuration;
La sortie devrait ressembler à ce qui suit :
Configuration - onpremexadr
Protection Mode: MaxPerformance
Members:
db1_phx3g7 - Primary database
db1 - Physical standby database
Fast-Start Failover: Disabled
Configuration Status:
SUCCESS (status updated 14 seconds ago)
- Passez à Oracle Exadata Database Machine sur site si nécessaire.