Pular para o conteúdo

Oracle Data Guard: REINSTATE DATABASE

Oracle Data Guard: REINSTATE DATABASE

Se a máquina de produção estiver indisponível, é necessário um FAILOVER para um Standby. Esta operação é diferente de um SWITCHOVER, que é uma operação planejada. Em um FAILOVER, dependendo do modo de proteção utilizado no Data Guard, pode haver perda de dados.

O problema do FAILOVER é que depois que a máquina de produção for recuperada, normalmente é necessária a recriação da antiga Produção como um Standby, e depois agendar um SWITCHOVER para voltar o uso na Produção. Até lá, a aplicação está utilizando o Standby, que geralmente é um ambiente inferior ao da produção, em termos de desempenho.
Se o banco de dados for da ordem de Terabytes, a recriação da antiga Produção como um Standby pode facilmente levar dias.

É para isto que servce o REINSTATE DATABASE, que faz com que, com o FLASHBACK DATABASE, voltemos o antigo banco de produção a um SCN (System Change Number) antes do Crash, e desta forma ele pode ser facilmente convertido em um Standby da nova Produção.

A operação de REINSTATE DATABASE pode ser feita manualmente, ou facilitada pelo data Guard Broker. No Treinamento de Oracle Data Guard na Nerv, fazamos dos dois jeitos.

[oracle@OracleDG02 ~]$ dgmgrl SYS/Nerv2012@NERV02
 DGMGRL for Linux: Version 11.2.0.1.0 - 64bit Production
 
 Copyright (c) 2000, 2009, Oracle. All rights reserved.
 
 Welcome to DGMGRL, type "help" for information.
 Connected.
 DGMGRL> FAILOVER TO 'nerv02';
 Performing failover NOW, please wait...
 Failover succeeded, new primary is "nerv02"
 DGMGRL> SHOW CONFIGURATION;
 
 Configuration - DRSolution
 
 Protection Mode: MaxPerformance
 Databases:
 nerv02 - Primary database
 nerv03 - Logical standby database
 nerv01 - Physical standby database (disabled)
 ORA-16661: the standby database needs to be reinstated
 
 Fast-Start Failover: DISABLED
 
 Configuration Status:
 SUCCESS
 
 DGMGRL> REINSTATE DATABASE 'nerv01';
 Reinstating database "nerv01", please wait...
 Operation requires shutdown of instance "NERV01" on database "nerv01"
 Shutting down instance "NERV01"...
 Database closed.
 Database dismounted.
 ORACLE instance shut down.
 Operation requires startup of instance "NERV01" on database "nerv01"
 Starting instance "NERV01"...
 ORACLE instance started.
 Database mounted.
 Continuing to reinstate database "nerv01" ...
 Operation requires shutdown of instance "NERV01" on database "nerv01"
 Shutting down instance "NERV01"...
 ORA-01109: database not open
 
 Database dismounted.
 ORACLE instance shut down.
 Operation requires startup of instance "NERV01" on database "nerv01"
 Starting instance "NERV01"...
 ORACLE instance started.
 Database mounted.
 Continuing to reinstate database "nerv01" ...
 Reinstatement of database "nerv01" succeeded
 DGMGRL> SHOW CONFIGURATION
 
 Configuration - DRSolution
 
 Protection Mode: MaxPerformance
 Databases:
 nerv02 - Primary database
 nerv03 - Logical standby database
 nerv01 - Physical standby database
 
 Fast-Start Failover: DISABLED
 
 Configuration Status:
 SUCCESS
 
 DGMGRL> SWITCHOVER TO 'nerv01';
 Performing switchover NOW, please wait...
 New primary database "nerv01" is opening...
 Operation requires shutdown of instance "NERV01" on database "nerv02"
 Shutting down instance "NERV01"...
 ORA-01109: database not open
 
 Database dismounted.
 ORACLE instance shut down.
 Operation requires startup of instance "NERV01" on database "nerv02"
 Starting instance "NERV01"...
 ORACLE instance started.
 Database mounted.
 Switchover succeeded, new primary is "nerv01"
 DGMGRL> SHOW CONFIGURATION;
 
 Configuration - DRSolution
 
 Protection Mode: MaxPerformance
 Databases:
 nerv01 - Primary database
 nerv03 - Logical standby database
 nerv02 - Physical standby database
 
 Fast-Start Failover: DISABLED
 
 Configuration Status:
 SUCCESS
 
 DGMGRL>

Este é um dos exercícios feitos no Treinamento de Oracle Data Guard na Nerv.

O Oracle Data Guard é um produto muito maior do que a maioria dos DBAs conhece, e é a solução de alta disponibilidade em bancos de dados mais avançada que conheço. Neste Treinamento os alunos irão, sem virtualização alguma, criar diversos bancos Standby, de todos os tipos (Physical, Logical, Snapshot), além de utilizar o Active Data Guard, Data Guard Broker, Switchover, Switchback, Failover, Failback, e muito mais. Acho que só de Physical Standby criamos um 6, de todas as formas possíveis.

Agenda: http://nervinformatica.com.br/

Valores: http://nervinformatica.com.br/valores.asp

Inscrições: contato@nervinformatica.com.br

Ricardo Portilho Proni

Ricardo Portilho Proni

Com 20 anos de experiência profissional, Oracle ACE Member – eleito pela Oracle Corporation um dos maiores especialistas do mundo em Oracle Database- Trabalhou em grande parte dos maiores bancos de dados Oracle do Brasil. Certificado em Oracle, SQL Server, DB2, MySQL, Sybase e Websphere. Conselheiro do GPO e do GUOB, palestrante do ENPO, GUOB Tech Day e Oracle Open World, escritor da Revista SQL Magazine e Instrutor na Nerv.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

plugins premium WordPress