Levando em consideração que o database é versão 12.1.0.2 ou superior e que o nome do banco produção é MCE e o DG será MCEC
Retorno do backup:
- Garantir que o backup feito na produção esteja disponível para o servidor onde será o DG(Data Guard)
- No servidor onde será o Dataguard criar um script:
$ORACLE_HOME/bin/rman target=sys/SENHA_SYS@MCE auxiliary / <<EOF
run {
allocate channel dev11 device type disk;
allocate channel dev12 device type disk;
allocate channel dev13 device type disk;
allocate auxiliary channel dev21 device type disk;
allocate auxiliary channel dev22 device type disk;
allocate auxiliary channel dev23 device type disk;
duplicate target database for standby
backup location ‘/bkp_prod/MCE/’
nofilenamecheck;
release channel dev11;
release channel dev12;
release channel dev13;
release channel dev21;
release channel dev22;
release channel dev23;
}
exit;
EOF
- Rodar o script com nohup e aguardar término verificando resultado.
- Efetuar configuração no PRODUÇÃO:
ALTER SYSTEM SET LOG_ARCHIVE_CONFIG=’DG_CONFIG=(MCE,MCEC)’ sid=’*’;
ALTER SYSTEM SET LOG_ARCHIVE_DEST_2=’SERVICE=MCEC LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=MCEC’ sid=’*’;
ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=5;
ALTER SYSTEM SET FAL_SERVER=’MCE’ sid=’*’;
ALTER SYSTEM SET FAL_CLIENT=’MCEC’ sid=’*’;
- Copiar o orapwMCE de produção para o DG e caso não exista criá-lo:
- Start do processo:
STARTUP MOUNT (se disser que já está startado sem problemas)
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;
- Falhas que podem ocorrer:
7.1 Caso na produção o ORAPW esteja dentro do ASM precisará ser retirado para fora.
- Criar o arquivo em cada nó do RAC com nome da instância (exemplo orapwdMCE1, orapwdMCE2) do DG é orapwdMCE apenas.
- No SRVCTL
srvctl config database -d MCE — > para verificar
Pelo srvctl modify database -d MCE -pwfile (deixando em branco)
7.2 Falha no recover dos archives verificado no alert do DG:
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
Em produção:
oracle@rac1:/bkp_prod/scripts$ rman target sys/<passwd_sys>@MCE
Recovery Manager: Release 12.1.0.2.0 – Production on Tue Jun 12 10:45:35 2018
Copyright (c) 1982, 2014, Oracle and/or its affiliates. All rights reserved.
connected to target database: MCE (DBID=1685198541)
RMAN> connect auxiliary sys/<passwd_sys>@MCEC sysMCEPr0tble#
connected to auxiliary database: MCE (DBID=1689128521, not open)
RMAN> run {
set until time “to_date(’12/06/2018 10:30:00′,’dd/mm/yyyy hh24:mi:ss’)”;
recover standby clone database;
}
…
…
archived log file name=+RECO_DATA/MCEC/ARCHIVELOG/2018_06_12/thread_2_seq_24553.444.978606121 thread=2 sequence=24553
media recovery complete, elapsed time: 00:00:04
Finished recover at 12-JUN-18
RMAN>
No DG
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;
Para testar:
Em produção fazer
SQL> alter system switch logfile;
Verificar no alert_log do DG
….
Media Recovery Log +RECO_DATA/MCEC/ARCHIVELOG/2018_06_12/thread_1_seq_40793.330.978607581
Tue Jun 12 11:26:48 2018
Media Recovery Log +RECO_DATA/MCEC/ARCHIVELOG/2018_06_12/thread_1_seq_40794.620.978607607
Tue Jun 12 11:26:48 2018
Media Recovery Log +RECO_DATA/MCEC/ARCHIVELOG/2018_06_12/thread_1_seq_40795.457.978607607
Media Recovery Waiting for thread 1 sequence 40796 (in transit)
Caso tenha GAP restaurar o gap faltante:
RMAN> restore archivelog from sequence 67118 until sequence 67123 thread 1;