RMAN Duplicate
Aprenda como utilizar RMAN Duplicate nesse Laboratório.
Neste artigo vamos utilizar a RMAN Duplicate para duplicar um banco de dados ativo, para um ambiente Standby.
Requisitos
- Arquivo TNSNames configurado com a string “STANDBY” no Servidor Primário.
- Software Oracle instalado no servidor Standby.
- TNSNames configurado no servidor Standby.
- Listener configurado no servidor Standby.
- Pfile/Spfile configurado no servidor Standby.
- Password File (orapwd) configurado, ou copiado do Produção para Standby.
Mãos a Obra
Quando a instância está em modo nomount, mount ou restrito, o PMON ou LREG atualiza o listener com essa informação e impede que novas conexões sejam estabelecidas.
O output do serviço lsnrctl mostra o handler como ‘BLOCKED’, bloqueado para novas conexões.
A cláusula (UR=A) para o TNSNames foi criada como uma resposta para um requisito de aprimoramento.
A cláusula pode ser inserida no TNSNames para permitir que usuários privilegiados ou administrativos conectem pelo listener, mesmo que o handler esteja bloqueando conexões para usuários não-privilegiados.
Configurar TNSNames
Iniciar Listener Standby
[sql]
$ lsnrctl start
[/sql]
Iniciar instância Standby em modo nomount e registrar Standby
[sql]
SQL> startup nomount;
SQL> alter system register;
[/sql]
Verificar Listener Standby
[sql]
$ lsnrctl status
[/sql]
Para utilizar o RMAN Duplicate, é necessário conectar em uma instância auxiliar. A instância auxiliar é reconhecida pelo RMAN como o database standby, que será criada a partir da duplicação de database (RMAN Duplicate).
Com a instância registrada, podemos conectar via RMAN no servidor Produção usando o parâmetro “AUXILIARY”
Conectar no RMAN Produção
[sql]
$ rman target sys/oracle@WINT auxiliary=sys/oracle@STANDBY
[/sql]
Executar Duplicate database
[sql]
RMAN > DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE DORECOVER NOFILENAMECHECK;
[/sql]
Ao concluir a execução, poderá verificar a sequência do servidor PRODUÇÃO e STANDBY.
Utilizando set newname
Podemos utilizar o parâmetro “set newname” para alterar o local do datafile no servidor standby.
[sql]
RMAN > REPORT SCHEMA;
[/sql]
As informações são respectivamente: Tamanho do Arquivo (MB), Tablespace, RB, segs, Nome do Arquivo de Dados.
[sql]
RMAN > RUN
{
SET NEWNAME FOR DATAFILE 1 TO ‘/u02/oradata/WINT/dicionário/system01.dbf’;
DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE DORECOVER NOFILENAMECHECK;
}
[/sql]
Referências Bibliográficas
Doc ID 444120.1
https://docs.oracle.com/cd/E11882_01/backup.112/e10642/rcmdupad.htm#BRADV441