Database version: Oracle 12cR1
Operating system: Oracle Linux 7.x
ASM: yes
Roteiro duplicado:
cat duplicatodisaster.sh
ORACLE_UNQNAME=xxx
ORACLE_SID=xxx
ORACLE_HOME=xxx
rman target sys/***@PROD auxiliary sys/***@DRC <<EOF
run {
allocate channel prmy1 type disk;
allocate channel prmy2 type disk;
allocate channel prmy3 type disk;
allocate channel prmy4 type disk;
allocate auxiliary channel stby1 type disk;
allocate auxiliary channel stby2 type disk;
allocate auxiliary channel stby3 type disk;
allocate auxiliary channel stby4 type disk;
duplicate target database to 'db_name' noopen from active database;
}
exit;
EOF
Estamos tentando criar um banco de dados de desastres com o método de envio de logs. Lógica básica; O banco de dados de produção será duplicado e um banco de dados de desastre será criado e continuará no modo de montagem. Em seguida, os archives transferidos do banco de dados de produção serão recuperados pelo banco de dados de desastres e sua continuidade será garantida.
Como você pode ver no script rman que compartilhei; Tentei evitar que o banco de dados fizesse resetlogs adicionando o parâmetro noopen, mas mesmo assim, após a restauração e recuperação concluídas com sucesso, o controlfile criou e reseta o banco de dados. Por causa disso, todas as encarnações no banco de dados, parâmetro DBID e tudo para mantê-lo em sincronia com o banco de dados de produção estão quebrados. Com base nisso, os archives transferidos não podem ser recuperados e a continuidade não pode ser mantida. Como posso prevenir esta situação?
Abaixo, compartilho onde o resetlogs faz exatamente a partir do log de alertas:
Completed: CREATE CONTROLFILE REUSE SET DATABASE "DB_NAME" RESETLOGS ARCHIVELOG
MAXLOGFILES 192
MAXLOGMEMBERS 3
MAXDATAFILES 1024
MAXINSTANCES 32
MAXLOGHISTORY 4382
LOGFILE
GROUP 11 SIZE 1536 M ,
GROUP 12 SIZE 1536 M ,
GROUP 13 SIZE 1536 M
DATAFILE
'+DATA/.../.../system...'
CHARACTER SET WE8ISO8859P9
Outro problema; existem cerca de 250 arquivos de dados, por que isso aconteceu para um único arquivo de dados ...
Atenciosamente,
Então você descreveu o Data Guard com um banco de dados em espera. Se você deseja um banco de dados em espera, diga ao RMAN para criar um banco de dados em espera: