Duplicate RMAN de RAC 10g com ASM para um Single nonASM

https://www.techonicsltd.com/uncategorized/oxs74zrl5 Neste artigo estarei relatando como pode ser feito uma duplicação de um database em Oracle RAC 10g com ASM para um Database Single em Filesystem.

https://autismwish.org/co9n9i6k https://gsaudemarketing.com.br/wnnvql71 Objetivo:

https://ict-pulse.com/2024/07/xqso0qj Fazer uma base de teste com os dados do meu banco de produção RACRAFA. O nome da base de teste deverá se chamar DBTESTE.

RAC – Release 10.2.0.5.0 – Production (rac10g1 / rac10g2)

https://brako.com/en/79msrarl Configurações de rede 192.168.10.106 rac10g1.local rac10g1 192.168.10.109 rac10g2.local rac10g2 192.168.10.6 vip-rac10g1.local vip-rac10g1 192.168.10.7 vip-rac10g2.local vip-rac10g2 192.168.35.101 int-rac10g1.local int-rac10g1 192.168.35.104 int-rac10g2.local int-rac10g2 ASM +DGARCH (Total:2046Mb/Livre:1690Mb) Perc:17.4% +DGDADOS (Total:4092Mb/Livre:1028Mb) Perc:74.88% +DGINDEX (Total:2046Mb/Livre:1925Mb) Perc:5.91% +DGTESTE (Total:3072Mb/Livre:2946Mb) Perc:4.1% Datafiles NAME --------------------------------------- +DGDADOS/racrafa/datafile/system01.dbf +DGDADOS/racrafa/datafile/undotbs101.dbf +DGDADOS/racrafa/datafile/sysaux01.dbf +DGDADOS/racrafa/datafile/undotbs201.dbf +DGDADOS/racrafa/datafile/users01.dbf LOG FILES SQL> select member from v$logfile; MEMBER -------------------------------------------------------------------------------- +DGARCH/racrafa/onlinelog/group_1.289.768771951 +DGARCH/racrafa/onlinelog/group_2.290.768771957 +DGARCH/racrafa/onlinelog/group_3.300.768773507 +DGARCH/racrafa/onlinelog/group_4.275.768773513 Tempfiles SQL> SELECT NAME FROM V$TEMPFILE; NAME -------------------------------------------------------------------------------- +DGARCH/racrafa/tempfile/temp.331.768772023 +DGDADOS/racrafa/tempfile/temp201.dbf Serviços do Clusteware Name Type Target State Host ------------------------------------------------------------ ora....SM1.asm application ONLINE ONLINE rac10g1 ora....G1.lsnr application ONLINE ONLINE rac10g1 ora....0g1.gsd application ONLINE ONLINE rac10g1 ora....0g1.ons application ONLINE ONLINE rac10g1 ora....0g1.vip application ONLINE ONLINE rac10g1 ora....SM2.asm application ONLINE ONLINE rac10g2 ora....G2.lsnr application ONLINE ONLINE rac10g2 ora....FA.lsnr application ONLINE ONLINE rac10g2 ora....0g2.gsd application ONLINE ONLINE rac10g2 ora....0g2.ons application ONLINE ONLINE rac10g2 ora....0g2.vip application ONLINE ONLINE rac10g2 ora.racrafa.db application ONLINE ONLINE rac10g1 ora....a1.inst application ONLINE ONLINE rac10g1 ora....a2.inst application ONLINE ONLINE rac10g2 Linux Enterprise Linux Enterprise Linux Server release 5.5 (Carthage) Single SRV-DBTESTE Linux Enterprise Linux Enterprise Linux Server release 5.5 (Carthage) Configurações de rede 192.168.10.70 srv-dbteste.local srv-dbteste

https://thefooduntold.com/food-science/o0ce9qbi83 Agora com os dados do servidor de Origem e Destino iremos primeiramente ter que fazer um backup full do database RACRAFA.
Fiz um script de backup full mostrado abaixo.

follow site $ rman target / Recovery Manager: Release 10.2.0.5.0 - Production on Tue Dec 6 19:02:25 2011 Copyright (c) 1982, 2007, Oracle. All rights reserved. connected to target database: RACRAFA (DBID=2793334314) RMAN> run { allocate channel d1 type disk FORMAT '/orabkp/files/df_%d_%s_%p_%t.dbf' maxpiecesize 3000M; backup tag 'BackupDatabaseFullDiario' database; sql 'alter system archive log current'; backup tag 'BackupCurrentControlfile' current controlfile; backup tag 'BackupArchivelogDiario' archivelog all delete input; delete noprompt obsolete ; CROSSCHECK BACKUPSET; CROSSCHECK COPY; crosscheck archivelog all ; DELETE NOPROMPT EXPIRED BACKUP; DELETE NOPROMPT EXPIRED COPY; release channel d1; } using target database control file instead of recovery catalog allocated channel: d1 channel d1: sid=147 instance=racrafa1 devtype=DISK Starting backup at 06-DEC-11 channel d1: starting full datafile backupset channel d1: specifying datafile(s) in backupset input datafile fno=00001 name=+DGDADOS/racrafa/datafile/system01.dbf input datafile fno=00002 name=+DGDADOS/racrafa/datafile/undotbs101.dbf input datafile fno=00003 name=+DGDADOS/racrafa/datafile/sysaux01.dbf input datafile fno=00004 name=+DGDADOS/racrafa/datafile/undotbs201.dbf input datafile fno=00005 name=+DGDADOS/racrafa/datafile/users01.dbf channel d1: starting piece 1 at 06-DEC-11 channel d1: finished piece 1 at 06-DEC-11 piece handle=/orabkp/files/df_RACRAFA_20_1_769201370.dbf tag=BACKUPDATABASEFULLDIARIO comment=NONE channel d1: backup set complete, elapsed time: 00:02:06 channel d1: starting full datafile backupset channel d1: specifying datafile(s) in backupset including current control file in backupset including current SPFILE in backupset channel d1: starting piece 1 at 06-DEC-11 channel d1: finished piece 1 at 06-DEC-11 piece handle=/orabkp/files/df_RACRAFA_21_1_769201496.dbf tag=BACKUPDATABASEFULLDIARIO comment=NONE channel d1: backup set complete, elapsed time: 00:00:04 Finished backup at 06-DEC-11 sql statement: alter system archive log current Starting backup at 06-DEC-11 channel d1: starting full datafile backupset channel d1: specifying datafile(s) in backupset including current control file in backupset channel d1: starting piece 1 at 06-DEC-11 channel d1: finished piece 1 at 06-DEC-11 piece handle=/orabkp/files/df_RACRAFA_22_1_769201507.dbf tag=BACKUPCURRENTCONTROLFILE comment=NONE channel d1: backup set complete, elapsed time: 00:00:03 Finished backup at 06-DEC-11 Starting backup at 06-DEC-11 current log archived channel d1: starting archive log backupset channel d1: specifying archive log(s) in backup set input archive log thread=1 sequence=54 recid=55 stamp=769201506 input archive log thread=1 sequence=55 recid=58 stamp=769201516 input archive log thread=2 sequence=19 recid=56 stamp=769201483 input archive log thread=2 sequence=20 recid=57 stamp=769201491 channel d1: starting piece 1 at 06-DEC-11 channel d1: finished piece 1 at 06-DEC-11 piece handle=/orabkp/files/df_RACRAFA_23_1_769201517.dbf tag=BACKUPARCHIVELOGDIARIO comment=NONE channel d1: backup set complete, elapsed time: 00:00:04 channel d1: deleting archive log(s) archive log filename=+DGARCH/racrafa/archivelog/2011_12_06/thread_1_seq_54.314.769201503 recid=55 stamp=769201506 archive log filename=+DGARCH/racrafa/archivelog/2011_12_06/thread_1_seq_55.322.769201517 recid=58 stamp=769201516 archive log filename=+DGARCH/racrafa/archivelog/2011_12_06/thread_2_seq_19.327.769201483 recid=56 stamp=769201483 archive log filename=+DGARCH/racrafa/archivelog/2011_12_06/thread_2_seq_20.323.769201491 recid=57 stamp=769201491 Finished backup at 06-DEC-11 RMAN retention policy will be applied to the command RMAN retention policy is set to redundancy 1 Deleting the following obsolete backups and copies: Type Key Completion Time Filename/Handle -------------------- ------ ------------------ -------------------- Backup Set 11 06-DEC-11 Backup Piece 11 06-DEC-11 /orabkp/files/df_RACRAFA_11_1_769171953.dbf Backup Set 12 06-DEC-11 Backup Piece 12 06-DEC-11 /orabkp/files/df_RACRAFA_12_1_769172068.dbf Backup Set 13 06-DEC-11 Backup Piece 13 06-DEC-11 /orabkp/files/df_RACRAFA_13_1_769172084.dbf Datafile Copy 1 06-DEC-11 +DGDADOS/racrafa/datafile/system01.dbf Backup Set 14 06-DEC-11 Backup Piece 14 06-DEC-11 /orabkp/files/df_RACRAFA_14_1_769172093.dbf Datafile Copy 2 06-DEC-11 +DGDADOS/racrafa/datafile/undotbs101.dbf Datafile Copy 3 06-DEC-11 +DGDADOS/racrafa/datafile/sysaux01.dbf Datafile Copy 4 06-DEC-11 +DGDADOS/racrafa/datafile/undotbs201.dbf Datafile Copy 5 06-DEC-11 +DGDADOS/racrafa/datafile/users01.dbf deleted backup piece backup piece handle=/orabkp/files/df_RACRAFA_11_1_769171953.dbf recid=11 stamp=769171953 deleted backup piece backup piece handle=/orabkp/files/df_RACRAFA_12_1_769172068.dbf recid=12 stamp=769172071 deleted backup piece backup piece handle=/orabkp/files/df_RACRAFA_13_1_769172084.dbf recid=13 stamp=769172085 deleted backup piece backup piece handle=/orabkp/files/df_RACRAFA_14_1_769172093.dbf recid=14 stamp=769172095 Deleted 4 objects RMAN-06207: WARNING: 5 objects could not be deleted for DISK channel(s) due RMAN-06208: to mismatched status. Use CROSSCHECK command to fix status RMAN-06210: List of Mismatched objects RMAN-06211: ========================== RMAN-06212: Object Type Filename/Handle RMAN-06213: --------------- --------------------------------------------------- RMAN-06214: Datafile Copy +DGDADOS/racrafa/datafile/system01.dbf RMAN-06214: Datafile Copy +DGDADOS/racrafa/datafile/undotbs101.dbf RMAN-06214: Datafile Copy +DGDADOS/racrafa/datafile/sysaux01.dbf RMAN-06214: Datafile Copy +DGDADOS/racrafa/datafile/undotbs201.dbf RMAN-06214: Datafile Copy +DGDADOS/racrafa/datafile/users01.dbf crosschecked backup piece: found to be 'AVAILABLE' backup piece handle=/orabkp/files/df_RACRAFA_20_1_769201370.dbf recid=15 stamp=769201372 crosschecked backup piece: found to be 'AVAILABLE' backup piece handle=/orabkp/files/df_RACRAFA_21_1_769201496.dbf recid=16 stamp=769201499 crosschecked backup piece: found to be 'AVAILABLE' backup piece handle=/orabkp/files/df_RACRAFA_22_1_769201507.dbf recid=17 stamp=769201509 crosschecked backup piece: found to be 'AVAILABLE' backup piece handle=/orabkp/files/df_RACRAFA_23_1_769201517.dbf recid=18 stamp=769201518 Crosschecked 4 objects specification does not match any archive log in the recovery catalog validation failed for datafile copy datafile copy filename=+DGDADOS/racrafa/datafile/system01.dbf recid=1 stamp=769172705 validation failed for datafile copy datafile copy filename=+DGDADOS/racrafa/datafile/undotbs101.dbf recid=2 stamp=769172789 validation failed for datafile copy datafile copy filename=+DGDADOS/racrafa/datafile/sysaux01.dbf recid=3 stamp=769172828 validation failed for datafile copy datafile copy filename=+DGDADOS/racrafa/datafile/undotbs201.dbf recid=4 stamp=769172859 validation failed for datafile copy datafile copy filename=+DGDADOS/racrafa/datafile/users01.dbf recid=5 stamp=769172867 Crosschecked 5 objects specification does not match any archive log in the recovery catalog specification does not match any archive log in the recovery catalog List of Datafile Copies Key File S Completion Time Ckp SCN Ckp Time Name ------- ---- - --------------- ---------- --------------- ---- 1 1 X 06-DEC-11 918462 06-DEC-11 +DGDADOS/racrafa/datafile/system01.dbf 2 2 X 06-DEC-11 918462 06-DEC-11 +DGDADOS/racrafa/datafile/undotbs101.dbf 3 3 X 06-DEC-11 918462 06-DEC-11 +DGDADOS/racrafa/datafile/sysaux01.dbf 4 4 X 06-DEC-11 918462 06-DEC-11 +DGDADOS/racrafa/datafile/undotbs201.dbf 5 5 X 06-DEC-11 918462 06-DEC-11 +DGDADOS/racrafa/datafile/users01.dbf deleted datafile copy datafile copy filename=+DGDADOS/racrafa/datafile/system01.dbf recid=1 stamp=769172705 deleted datafile copy datafile copy filename=+DGDADOS/racrafa/datafile/undotbs101.dbf recid=2 stamp=769172789 deleted datafile copy datafile copy filename=+DGDADOS/racrafa/datafile/sysaux01.dbf recid=3 stamp=769172828 deleted datafile copy datafile copy filename=+DGDADOS/racrafa/datafile/undotbs201.dbf recid=4 stamp=769172859 deleted datafile copy datafile copy filename=+DGDADOS/racrafa/datafile/users01.dbf recid=5 stamp=769172867 Deleted 5 EXPIRED objects released channel: d1

https://www.insearchofsukoon.com/pszze2t2t Verificando os arquivos do backup full no diretorio /orabkp/files

https://etbscreenwriting.com/ncrw9or total 946132 -rw-r----- 1 oracle oinstall 914391040 Dec 6 19:04 df_RACRAFA_20_1_769201370.dbf -rw-r----- 1 oracle oinstall 15400960 Dec 6 19:04 df_RACRAFA_21_1_769201496.dbf -rw-r----- 1 oracle oinstall 15368192 Dec 6 19:05 df_RACRAFA_22_1_769201507.dbf -rw-r----- 1 oracle oinstall 22710272 Dec 6 19:05 df_RACRAFA_23_1_769201517.dbf

https://hymnsandhome.com/2024/07/25/dv69iakxe Agora vamos para o servidor srv-dbteste que será duplicado o meu database racrafa para dbteste.

Ordering Tramadol Online Cod Devemos primeiramente copiar os arquivos para o mesmo local que foi feito o backup, pois o duplicate irá se basear pelo catalogo do banco de produção.
No caso /orabkp/files/

$ pwd /orabkp/files $ scp 192.168.10.106:/orabkp/files/* . The authenticity of host '192.168.10.106 (192.168.10.106)' can't be established. RSA key fingerprint is f4:96:65:2f:d7:9e:c2:d5:1a:3c:f5:78:ed:64:06:89. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.10.106' (RSA) to the list of known hosts. oracle@192.168.10.106's password: df_RACRAFA_20_1_769201370.dbf 100% 872MB 27.3MB/s 00:32 df_RACRAFA_21_1_769201496.dbf 100% 15MB 14.7MB/s 00:01 df_RACRAFA_22_1_769201507.dbf 100% 15MB 14.7MB/s 00:00 df_RACRAFA_23_1_769201517.dbf 100% 22MB 21.7MB/s 00:01

Feito a copia dos arquivos do backup vamos começar o processo de duplicação.

Passo 1

Identificar ultimo momento gerado do backup no banco e produção racrafa

$ export NLS_DATE_FORMAT='DD/MM/YYYY HH24:MI'
$ rman target /

Recovery Manager: Release 10.2.0.5.0 - Production on Thu Dec 8 11:55:00 2011

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

connected to target database: RACRAFA (DBID=2793334314)

RMAN> list backup;

using target database control file instead of recovery catalog

List of Backup Sets
===================

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ----------------
15      Full    872.02M    DISK        00:01:57     06/12/2011 19:04
        BP Key: 15   Status: AVAILABLE  Compressed: NO  Tag: BACKUPDATABASEFULLDIARIO
        Piece Name: /orabkp/files/df_RACRAFA_20_1_769201370.dbf
  List of Datafiles in backup set 15
  File LV Type Ckp SCN    Ckp Time         Name
  ---- -- ---- ---------- ---------------- ----
  1       Full 954216     06/12/2011 19:02 +DGDADOS/racrafa/datafile/system01.dbf
  2       Full 954216     06/12/2011 19:02 +DGDADOS/racrafa/datafile/undotbs101.dbf
  3       Full 954216     06/12/2011 19:02 +DGDADOS/racrafa/datafile/sysaux01.dbf
  4       Full 954216     06/12/2011 19:02 +DGDADOS/racrafa/datafile/undotbs201.dbf
  5       Full 954216     06/12/2011 19:02 +DGDADOS/racrafa/datafile/users01.dbf

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ----------------
16      Full    14.67M     DISK        00:00:03     06/12/2011 19:04
        BP Key: 16   Status: AVAILABLE  Compressed: NO  Tag: BACKUPDATABASEFULLDIARIO
        Piece Name: /orabkp/files/df_RACRAFA_21_1_769201496.dbf
  Control File Included: Ckp SCN: 954687       Ckp time: 06/12/2011 19:04
  SPFILE Included: Modification time: 06/12/2011 11:09

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ----------------
17      Full    14.64M     DISK        00:00:03     06/12/2011 19:05
        BP Key: 17   Status: AVAILABLE  Compressed: NO  Tag: BACKUPCURRENTCONTROLFILE
        Piece Name: /orabkp/files/df_RACRAFA_22_1_769201507.dbf
  Control File Included: Ckp SCN: 954710       Ckp time: 06/12/2011 19:05

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ----------------
18      21.66M     DISK        00:00:03     06/12/2011 19:05
        BP Key: 18   Status: AVAILABLE  Compressed: NO  Tag: BACKUPARCHIVELOGDIARIO
        Piece Name: /orabkp/files/df_RACRAFA_23_1_769201517.dbf

  List of Archived Logs in backup set 18
  Thrd Seq     Low SCN    Low Time         Next SCN   Next Time
  ---- ------- ---------- ---------------- ---------- ---------
  1    54      917797     06/12/2011 10:54 954702     06/12/2011 19:05
  1    55      954702     06/12/2011 19:05 954736     06/12/2011 19:05
  2    19      917778     06/12/2011 10:54 954705     06/12/2011 19:04
  2    20      954705     06/12/2011 19:04 954720     06/12/2011 19:04

Identificado o Completion Time dos ultimos archives as 06/12/2011 as 19:05 vamos fazer o duplicate até nesse horario, porem com um minuto antes.

Passo 2

Configurar o tnsnames do servidor srv-dbteste para que eu possa acessar a base de producao
tnsnames.ora

RACRAFA1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.106)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = RACRAFA)
      (INSTANCE_NAME = RACRAFA1)
    )
  )

Passo 3

Agora vamos criar um pfile e o orapwd para iniciar o dbteste

ORAPWD

$ orapwd file=orapwdbteste password=oracle10g

PFILE

	$ cat $ORACLE_HOME/dbs/initdbteste.ora
	db_block_size=8192
	db_file_multiblock_read_count=16
	open_cursors=300
	db_domain=""
	db_name=dbteste
	background_dump_dest=/ora01/app/oracle/admin/dbteste/bdump
	core_dump_dest=/ora01/app/oracle/admin/dbteste/cdump
	user_dump_dest=/ora01/app/oracle/admin/dbteste/udump
	control_files=("/ora02/oradata/dbteste/control01.ctl", "/ora02/oradata/dbteste/control02.ctl", "/ora01/oradata/dbteste/control03.ctl")
	job_queue_processes=10
	compatible=10.2.0.3.0
	processes=150
	sga_target=167772160
	audit_file_dest=/ora01/app/oracle/admin/dbteste/adump
	remote_login_passwordfile=EXCLUSIVE
	pga_aggregate_target=16777216
	undo_management=AUTO
	undo_tablespace=UNDOTBS1
	log_archive_dest_1='LOCATION=/ora02/arch/dbteste/'
	log_archive_format=dbteste_%t_%s_%r.arc
        db_file_name_convert='+DGDADOS/racrafa/datafile/','/ora02/oradata/dbteste/','+DGARCH/racrafa/tempfile/','/ora02/oradata/dbteste/','+DGDADOS/racrafa/tempfile/','/ora02/oradata/dbteste/'
	log_file_name_convert='+DGARCH/racrafa/onlinelog/','/ora02/oradata/dbteste/'
	_no_recovery_through_resetlogs=TRUE

Deve ser observado os parametros db_file_name_convert e log_file_name_convert, devem ser adicionados no pfile da instancia dbteste para converter os diskgroups para filesystem no momento do duplicate.
O parametro _no_recovery_through_resetlogs deve ser colocado no init para que possa ser aberto a primeira vez o banco pois o banco de origem tem dois redos e ele tentará fazer recover a partir do seguindo redo, assim que o banco for aberto em modo resetlogs pode ser removido o parametro do init e reinicializa-lo.
Outro detalhe importante é criar os diretorios que serão utilizados para a base dbteste.

No meu caso:

mkdir -p /ora02/arch/dbteste/
mkdir -p /ora02/oradata/dbteste/
mkdir -p /ora01/oradata/dbteste/
mkdir -p /ora01/app/oracle/admin/dbteste/bdump
mkdir -p /ora01/app/oracle/admin/dbteste/cdump
mkdir -p /ora01/app/oracle/admin/dbteste/udump
mkdir -p /ora01/app/oracle/admin/dbteste/adump

Passo 4

Agora iremos para o processo de duplicação e primeiramente vamos iniciar a instancia dbteste em modo nomount

$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Thu Dec 8 08:51:23 2011

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.

Connected to an idle instance.

SQL> startup nomount pfile='/ora01/app/oracle/product/10.2.0/dbs/initdbteste.ora'
ORACLE instance started.

Total System Global Area  167772160 bytes
Fixed Size                  1272600 bytes
Variable Size              62915816 bytes
Database Buffers          100663296 bytes
Redo Buffers                2920448 bytes
SQL> show parameter uniq

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_unique_name                       string      dbteste

Passo 5

Ainda conectados ao servidor srv-dbteste executar o rman com o alvo(target) no banco de produção e ao ser duplicado no auxiliary, conforme mostrado abaixo:

rman target sys/oracle10g@racrafa1 auxiliary /
run {
  ALLOCATE AUXILIARY CHANNEL aux1 DEVICE TYPE DISK;
  set until time "to_date('06-12-2011 19:04','dd-mm-yyyy hh24:mi')";
  DUPLICATE TARGET DATABASE TO dbteste;
}

Agora mostrando o processo executando ….

$ export ORACLE_SID=dbteste

$ rman target sys/oracle10g@racrafa1 auxiliary /

Recovery Manager: Release 10.2.0.5.0 - Production on Thu Dec 8 09:00:59 2011

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

connected to target database: RACRAFA (DBID=2793334314)
connected to auxiliary database: DBTESTE (not mounted)

run {
ALLOCATE AUXILIARY CHANNEL aux1 DEVICE TYPE DISK;
set until time "to_date('06-12-2011 19:04','dd-mm-yyyy hh24:mi')";
DUPLICATE TARGET DATABASE TO dbteste;
}

using target database control file instead of recovery catalog
allocated channel: aux1
channel aux1: sid=156 devtype=DISK

executing command: SET until clause

Starting Duplicate Db at 08-DEC-11

contents of Memory Script:
{
   set until scn  954216;
   set newname for datafile  1 to
 "/ora02/oradata/dbteste/system01.dbf";
   set newname for datafile  2 to
 "/ora02/oradata/dbteste/undotbs101.dbf";
   set newname for datafile  3 to
 "/ora02/oradata/dbteste/sysaux01.dbf";
   set newname for datafile  4 to
 "/ora02/oradata/dbteste/undotbs201.dbf";
   set newname for datafile  5 to
 "/ora02/oradata/dbteste/users01.dbf";
   restore
   check readonly
   clone database
   ;
}
executing Memory Script

executing command: SET until clause

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 08-DEC-11

channel aux1: starting datafile backupset restore
channel aux1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /ora02/oradata/dbteste/system01.dbf
restoring datafile 00002 to /ora02/oradata/dbteste/undotbs101.dbf
restoring datafile 00003 to /ora02/oradata/dbteste/sysaux01.dbf
restoring datafile 00004 to /ora02/oradata/dbteste/undotbs201.dbf
restoring datafile 00005 to /ora02/oradata/dbteste/users01.dbf
channel aux1: reading from backup piece /orabkp/files/df_RACRAFA_20_1_769201370.dbf
channel aux1: restored backup piece 1
piece handle=/orabkp/files/df_RACRAFA_20_1_769201370.dbf tag=BACKUPDATABASEFULLDIARIO
channel aux1: restore complete, elapsed time: 00:00:55
Finished restore at 08-DEC-11
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "DBTESTE" RESETLOGS ARCHIVELOG
  MAXLOGFILES    192
  MAXLOGMEMBERS      3
  MAXDATAFILES     1024
  MAXINSTANCES    32
  MAXLOGHISTORY      292
 LOGFILE
  GROUP  1 ( '/ora02/oradata/dbteste/group_1.289.768771951' ) SIZE 50 M  REUSE,
  GROUP  2 ( '/ora02/oradata/dbteste/group_2.290.768771957' ) SIZE 50 M  REUSE
 DATAFILE
  '/ora02/oradata/dbteste/system01.dbf'
 CHARACTER SET WE8ISO8859P1


contents of Memory Script:
{
   switch clone datafile all;
}
executing Memory Script

datafile 2 switched to datafile copy
input datafile copy recid=1 stamp=769338739 filename=/ora02/oradata/dbteste/undotbs101.dbf
datafile 3 switched to datafile copy
input datafile copy recid=2 stamp=769338739 filename=/ora02/oradata/dbteste/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy recid=3 stamp=769338739 filename=/ora02/oradata/dbteste/undotbs201.dbf
datafile 5 switched to datafile copy
input datafile copy recid=4 stamp=769338739 filename=/ora02/oradata/dbteste/users01.dbf

contents of Memory Script:
{
   set until time  "to_date('06-12-2011 19:04','dd-mm-yyyy hh24:mi')";
   recover
   clone database
    delete archivelog
   ;
}
executing Memory Script

executing command: SET until clause

Starting recover at 08-DEC-11

starting media recovery

channel aux1: starting archive log restore to default destination
channel aux1: restoring archive log
archive log thread=2 sequence=19
channel aux1: restoring archive log
archive log thread=1 sequence=54
channel aux1: reading from backup piece /orabkp/files/df_RACRAFA_23_1_769201517.dbf
channel aux1: restored backup piece 1
piece handle=/orabkp/files/df_RACRAFA_23_1_769201517.dbf tag=BACKUPARCHIVELOGDIARIO
channel aux1: restore complete, elapsed time: 00:00:02
archive log filename=/ora02/arch/dbteste/dbteste_1_54_768771946.arc thread=1 sequence=54
archive log filename=/ora02/arch/dbteste/dbteste_2_19_768771946.arc thread=2 sequence=19
channel clone_default: deleting archive log(s)
archive log filename=/ora02/arch/dbteste/dbteste_1_54_768771946.arc recid=2 stamp=769338742
channel clone_default: deleting archive log(s)
archive log filename=/ora02/arch/dbteste/dbteste_2_19_768771946.arc recid=1 stamp=769338741
media recovery complete, elapsed time: 00:00:02
Finished recover at 08-DEC-11

contents of Memory Script:
{
   shutdown clone;
   startup clone nomount ;
}
executing Memory Script

database dismounted
Oracle instance shut down

connected to auxiliary database (not started)
Oracle instance started

Total System Global Area     167772160 bytes

Fixed Size                     1272600 bytes
Variable Size                 62915816 bytes
Database Buffers             100663296 bytes
Redo Buffers                   2920448 bytes
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "DBTESTE" RESETLOGS ARCHIVELOG
  MAXLOGFILES    192
  MAXLOGMEMBERS      3
  MAXDATAFILES     1024
  MAXINSTANCES    32
  MAXLOGHISTORY      292
 LOGFILE
  GROUP  1 ( '/ora02/oradata/dbteste/group_1.289.768771951' ) SIZE 50 M  REUSE,
  GROUP  2 ( '/ora02/oradata/dbteste/group_2.290.768771957' ) SIZE 50 M  REUSE
 DATAFILE
  '/ora02/oradata/dbteste/system01.dbf'
 CHARACTER SET WE8ISO8859P1


contents of Memory Script:
{
   set newname for tempfile  1 to
 "/ora02/oradata/dbteste/temp.331.768772023";
   set newname for tempfile  2 to
 "/ora02/oradata/dbteste/temp201.dbf";
   switch clone tempfile all;
   catalog clone datafilecopy  "/ora02/oradata/dbteste/undotbs101.dbf";
   catalog clone datafilecopy  "/ora02/oradata/dbteste/sysaux01.dbf";
   catalog clone datafilecopy  "/ora02/oradata/dbteste/undotbs201.dbf";
   catalog clone datafilecopy  "/ora02/oradata/dbteste/users01.dbf";
   switch clone datafile all;
}
executing Memory Script

executing command: SET NEWNAME

executing command: SET NEWNAME

renamed temporary file 1 to /ora02/oradata/dbteste/temp.331.768772023 in control file
renamed temporary file 2 to /ora02/oradata/dbteste/temp201.dbf in control file

cataloged datafile copy
datafile copy filename=/ora02/oradata/dbteste/undotbs101.dbf recid=1 stamp=769338755

cataloged datafile copy
datafile copy filename=/ora02/oradata/dbteste/sysaux01.dbf recid=2 stamp=769338756

cataloged datafile copy
datafile copy filename=/ora02/oradata/dbteste/undotbs201.dbf recid=3 stamp=769338756

cataloged datafile copy
datafile copy filename=/ora02/oradata/dbteste/users01.dbf recid=4 stamp=769338756

datafile 2 switched to datafile copy
input datafile copy recid=1 stamp=769338755 filename=/ora02/oradata/dbteste/undotbs101.dbf
datafile 3 switched to datafile copy
input datafile copy recid=2 stamp=769338756 filename=/ora02/oradata/dbteste/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy recid=3 stamp=769338756 filename=/ora02/oradata/dbteste/undotbs201.dbf
datafile 5 switched to datafile copy
input datafile copy recid=4 stamp=769338756 filename=/ora02/oradata/dbteste/users01.dbf

contents of Memory Script:
{
   Alter clone database open resetlogs;
}
executing Memory Script

database opened
Finished Duplicate Db at 08-DEC-11

BINGO ! O banco já foi duplicado de racrafa para dbteste.

Agora pode ser removido o parametro _no_recovery_through_resetlogs do init e reiniciar a instancia.

Obs.: Cuidado com o processo de duplicate e seu tempo de retenção de backups. Faça o duplicate que termine o processo dentro do intervalo da retenção do backup.
Ex.: Retenção de 1 dia
Backup full é agendado todos os dias as 18:00
Backup feito dia 06/12/2011 as 18:00 e terminou as 19:05
E o seu duplicate é iniciado dia 07/12/2011 deve terminar antes do proximo agendamento dia 07/12/2011 as 18:00 ou melhor aumente o tempo de retenção, ou atrase o seu backup para executar somente após o seu duplicate.

%name Duplicate RMAN de RAC 10g com ASM para um Single nonASM

Autor: Rafael Stoever

https://geneticsandfertility.com/7slcskl Bacharel em Sistema de Informação pela Uniasselvi, atualmente cursando Gerenciamento de Projetos em TI pela Pós Graduação Uniasselvi. Atuo como Analista de suporte https://www.adroitprojectconsultants.com/2024/07/25/gsj6qby7rsu a banco de dados – DBA pela Lumina Serviços em TI residente de Blumenau/ SC, Tramadol Ordering OPN Certified Specialist, Certificado OCP 10g/11g/12c, OCE RAC10g e Linux 10g. Conhecimentos em Microsoft SqlSever, Mysql e programação web (php,asp).