19C之前恢复drop 掉的PDB 创建另一个实例

2024-06-15 22:20

本文主要是介绍19C之前恢复drop 掉的PDB 创建另一个实例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

--------恢复PDB------------------

 create pluggable database testpdb admin user test identified by test;
 backup database plus archivelog tag 'full db  backup';
 
RMAN>  backup database plus archivelog tag 'full db  backup';
ORA-15012: ASM file '+DATA1/CDB/ARCHIVELOG/2024_06_01/thread_2_seq_90.424.1170496125' does not exist
RMAN> crosscheck archivelog all;


crosscheck backup all;
delete expired backup;
list backup summary;
RMAN> list backup;
  
 
SQL> drop pluggable database testpdb;
Pluggable database dropped.
 
·     In case if we try to restore PDB as a database, we will get below error 
RMAN> restore pluggable database testpdb;
 
Starting restore at 17-JUN-15
using channel ORA_DISK_1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 06/17/2015 16:46:46
RMAN-06813: could not translate pluggable database TESTPDB
 
Restore procedure
 
Pluggable database (PDB) can’t be restored as a database. It needs to be restored as database object. 
For that auxiliary instance has to be created temporarily where CDB and required PDB will be restored. Later PDB will be unplugged from auxiliary instance and attached to target instance
 

Create a temporary auxiliary instance to restore container database (CDB) and required pluggable database (PDB)
 
Create password file for auxiliary instance
 
[oracle@Server dbs]$ orapwd file=orapwtestcdb1 password=sys entries=5
[oracle@Server dbs]$ ls -lrt orapwtestcdb1
-rw-r-----. 1 oracle oinstall 5120 Jun 17 17:04 orapwtestcdb1
 
Create init file for auxiliary instance
 

*.compatible='12.1.0.0.0'
*.control_files='/u01/app/oracle/oradata/TESTCDB1/controlfile/o1_mf_bfsn3k7o_.ctl'
*.db_block_size=8192
*.db_create_file_dest='/u01/app/oracle/oradata'
*.db_name='testcdb1'
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=testcdb1XDB)'
*.enable_pluggable_database=true
*.open_cursors=300
*.processes=300
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'
 
Start the auxiliary instance in nomount state
 

[oracle@Server dbs]$ export ORACLE_SID=testcdb1
[oracle@Server dbs]$ sqlplus sys/sy as sysdba
 
SQL*Plus: Release 12.1.0.1.0 Production on Wed Jun 17 17:04:57 2015
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to an idle instance.
SQL>  startup nomount pfile=inittestcdb1.ora
ORACLE instance started.
Total System Global Area          242208768 bytes
Fixed Size                                 2849120 bytes
Variable Size                             184551072 bytes
Database Buffers                      50331648 bytes
Redo Buffers                4476928 bytes
 
Connect auxiliary instance through RMAN
 
[oracle@Server dbs]$ rman auxiliary sys/sys
Recovery Manager: Release 12.1.0.1.0 - Production on Wed Jun 17 17:08:45 2015
Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.
connected to auxiliary database: TESTCDB1 (not mounted)
 
Execute Duplicate command for CDB and particular PDB using backup location

-----多个备份下的情况

[oracle@rac1 dbs]$ rman auxiliary /

Recovery Manager: Release 19.0.0.0.0 - Production on Sat Jun 15 21:16:36 2024
Version 19.20.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

connected to auxiliary database: TSTCDB1 (not mounted)

RMAN> Duplicate database to 'tstcdb1' noopen backup location '+data1';

Starting Duplicate Db at 15-JUN-24
searching for database ID
found backup of database ID 1017019486
found backup of database ID 2265125454
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 06/15/2024 21:16:57
RMAN-05501: aborting duplication of target database
RMAN-05657: There are multiple database IDs present.

RMAN> set dbid 1017019486

executing command: SET DBID

RMAN> Duplicate database to 'tstcdb1' noopen backup location '+data1';

-----基于PTTR-------------------------------------------------------

run {
set until time "to_date('15-JUN-2024 18:10:00','DD-MON-YYYY HH24:MI:SS')";
 Duplicate database to 'testcdb1' noopen backup location '+data1';
 }


 
RMAN>  Duplicate database to 'testcdb1' noopen backup location '/u01/app/oracle/fast_recovery_area/TESTCDB/backup/';
 
Starting Duplicate Db at 17-JUN-15
contents of Memory Script:
{
   sql clone "create spfile from memory";
}
executing Memory Script
sql statement: create spfile from memory
contents of Memory Script:
{
   shutdown clone immediate;
   startup clone nomount;
}
executing Memory Script
 
Oracle instance shut down
 
connected to auxiliary database (not started)
Oracle instance started
 
Total System Global Area          242208768 bytes
Fixed Size                                 2849120 bytes
Variable Size                184551072 bytes
Database Buffers                      50331648 bytes
Redo Buffers                            4476928 bytes
 
contents of Memory Script:
{
   sql clone "alter system set  control_files =
  ''/u01/app/oracle/oradata/TESTCDB1/controlfile/o1_mf_bfsn3k7o_.ctl'' comment=
 ''Set by RMAN'' scope=spfile";
   sql clone "alter system set  db_name =
 ''TESTCDB'' comment=
 ''Modified by RMAN duplicate'' scope=spfile";
   sql clone "alter system set  db_unique_name =
 ''TESTCDB1'' comment=
 ''Modified by RMAN duplicate'' scope=spfile";
   shutdown clone immediate;
   startup clone force nomount
   restore clone primary controlfile from  '/u01/app/oracle/fast_recovery_area/TESTCDB/backup/o1_mf_s_882636099_br359n4j_.bkp';
   alter clone database mount;
}
executing Memory Script
 
sql statement: alter system set  control_files =   ''/u01/app/oracle/oradata/TESTCDB1/controlfile/o1_mf_bfsn3k7o_.ctl'' comment= ''Set by RMAN'' scope=spfile
 
sql statement: alter system set  db_name =  ''TESTCDB'' comment= ''Modified by RMAN duplicate'' scope=spfile
 
sql statement: alter system set  db_unique_name =  ''TESTCDB1'' comment= ''Modified by RMAN duplicate'' scope=spfile
 
Oracle instance shut down
Oracle instance started
Total System Global Area     242208768 bytes
 
Fixed Size                     2849120 bytes
Variable Size                184551072 bytes
Database Buffers              50331648 bytes
Redo Buffers                   4476928 bytes
 
Starting restore at 17-JUN-15
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=19 device type=DISK
 
channel ORA_AUX_DISK_1: restoring control file
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/u01/app/oracle/oradata/TESTCDB1/controlfile/o1_mf_bfsn3k7o_.ctl
Finished restore at 17-JUN-15
 
database mounted
released channel: ORA_AUX_DISK_1
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=19 device type=DISK
 
contents of Memory Script:
{
   set until scn  1926434;
   set newname for clone datafile  1 to new;
   set newname for clone datafile  3 to new;
   set newname for clone datafile  4 to new;
   set newname for clone datafile  5 to new;
   set newname for clone datafile  6 to new;
   set newname for clone datafile  7 to new;
   set newname for clone datafile  15 to new;
   set newname for clone datafile  16 to new;
   restore
   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
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 17-JUN-15
using channel ORA_AUX_DISK_1
 
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_system_%u_.dbf
channel ORA_AUX_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_%u_.dbf
channel ORA_AUX_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_undotbs1_%u_.dbf
channel ORA_AUX_DISK_1: restoring datafile 00006 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_users_%u_.dbf
channel ORA_AUX_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/TESTCDB/backup/testpdb117q9nt34_1_1
channel ORA_AUX_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/TESTCDB/backup/testpdb117q9nt34_1_1 tag=TAG20150617T163756
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:01:05
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_system_%u_.dbf
channel ORA_AUX_DISK_1: restoring datafile 00007 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_%u_.dbf
channel ORA_AUX_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/TESTCDB/backup/testpdb118q9nt5f_1_1
channel ORA_AUX_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/TESTCDB/backup/testpdb118q9nt5f_1_1 tag=TAG20150617T163756
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:45
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00015 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_system_%u_.dbf
channel ORA_AUX_DISK_1: restoring datafile 00016 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_%u_.dbf
channel ORA_AUX_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/TESTCDB/backup/testpdb119q9nt6i_1_1
channel ORA_AUX_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/TESTCDB/backup/testpdb119q9nt6i_1_1 tag=TAG20150617T163756
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:35
Finished restore at 17-JUN-15
 
contents of Memory Script:
{
   switch clone datafile all;
}
executing Memory Script
 
datafile 1 switched to datafile copy
input datafile copy RECID=9 STAMP=882637965 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_system_br36zdcj_.dbf
datafile 3 switched to datafile copy
input datafile copy RECID=10 STAMP=882637965 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br36zdcn_.dbf
datafile 4 switched to datafile copy
input datafile copy RECID=11 STAMP=882637965 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_undotbs1_br36zdcq_.dbf
datafile 5 switched to datafile copy
input datafile copy RECID=12 STAMP=882637965 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_system_br371fvr_.dbf
datafile 6 switched to datafile copy
input datafile copy RECID=13 STAMP=882637965 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_users_br36zdfb_.dbf
datafile 7 switched to datafile copy
input datafile copy RECID=14 STAMP=882637966 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br371frz_.dbf
datafile 15 switched to datafile copy
input datafile copy RECID=15 STAMP=882637966 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_system_br372tts_.dbf
datafile 16 switched to datafile copy
input datafile copy RECID=16 STAMP=882637966 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br372ttf_.dbf
 
contents of Memory Script:
{
   set until scn  1926434;
   recover
   clone database
    delete archivelog
   ;
}
executing Memory Script
 
executing command: SET until clause
 
Starting recover at 17-JUN-15
using channel ORA_AUX_DISK_1
 
starting media recovery
 
channel ORA_AUX_DISK_1: starting archived log restore to default destination
channel ORA_AUX_DISK_1: restoring archived log
archived log thread=1 sequence=23
channel ORA_AUX_DISK_1: reading from backup piece /u01/app/oracle/fast_recovery_area/TESTCDB/backup/testpdb11dq9nta2_1_1
channel ORA_AUX_DISK_1: piece handle=/u01/app/oracle/fast_recovery_area/TESTCDB/backup/testpdb11dq9nta2_1_1 tag=TAG20150617T164113
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
archived log file name=/u01/app/oracle/fast_recovery_area/TESTCDB1/archivelog/2015_06_17/o1_mf_1_23_br373zdg_.arc thread=1 sequence=23
channel clone_default: deleting archived log(s)
archived log file name=/u01/app/oracle/fast_recovery_area/TESTCDB1/archivelog/2015_06_17/o1_mf_1_23_br373zdg_.arc RECID=1 STAMP=882637967
media recovery complete, elapsed time: 00:00:02
Finished recover at 17-JUN-15
Oracle instance started
 
Total System Global Area     242208768 bytes
 
Fixed Size                     2849120 bytes
Variable Size                184551072 bytes
Database Buffers              50331648 bytes
Redo Buffers                   4476928 bytes
 
contents of Memory Script:
{
   sql clone "alter system set  db_name =
 ''TESTCDB1'' comment=
 ''Reset to original value by RMAN'' scope=spfile";
   sql clone "alter system reset  db_unique_name scope=spfile";
}
executing Memory Script
 
sql statement: alter system set  db_name =  ''TESTCDB1'' comment= ''Reset to original value by RMAN'' scope=spfile
 
sql statement: alter system reset  db_unique_name scope=spfile
Oracle instance started
 
Total System Global Area     242208768 bytes
 
Fixed Size                     2849120 bytes
Variable Size                184551072 bytes
Database Buffers              50331648 bytes
Redo Buffers                   4476928 bytes
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "TESTCDB1" RESETLOGS ARCHIVELOG
  MAXLOGFILES     16
  MAXLOGMEMBERS      3
  MAXDATAFILES     1024
  MAXINSTANCES     8
  MAXLOGHISTORY      292
 LOGFILE
  GROUP   1  SIZE 50 M ,
  GROUP   2  SIZE 50 M ,
  GROUP   3  SIZE 50 M
 DATAFILE
  '/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_system_br36zdcj_.dbf',
  '/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_system_br371fvr_.dbf',
  '/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_system_br372tts_.dbf'
 CHARACTER SET WE8MSWIN1252
 
 
contents of Memory Script:
{
   set newname for clone tempfile  1 to new;
   set newname for clone tempfile  2 to new;
   set newname for clone tempfile  3 to new;
   switch clone tempfile all;
   catalog clone datafilecopy  "/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br36zdcn_.dbf",
 "/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_undotbs1_br36zdcq_.dbf",
 "/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_users_br36zdfb_.dbf",
 "/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br371frz_.dbf",
 "/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br372ttf_.dbf";
   switch clone datafile all;
}
executing Memory Script
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
 
renamed tempfile 1 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_temp_%u_.tmp in control file
renamed tempfile 2 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_temp_%u_.tmp in control file
renamed tempfile 3 to /u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_temp_%u_.tmp in control file
 
cataloged datafile copy
datafile copy file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br36zdcn_.dbf RECID=1 STAMP=882637984
cataloged datafile copy
datafile copy file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_undotbs1_br36zdcq_.dbf RECID=2 STAMP=882637984
cataloged datafile copy
datafile copy file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_users_br36zdfb_.dbf RECID=3 STAMP=882637984
cataloged datafile copy
datafile copy file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br371frz_.dbf RECID=4 STAMP=882637984
cataloged datafile copy
datafile copy file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br372ttf_.dbf RECID=5 STAMP=882637984
 
datafile 3 switched to datafile copy
input datafile copy RECID=1 STAMP=882637984 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br36zdcn_.dbf
datafile 4 switched to datafile copy
input datafile copy RECID=2 STAMP=882637984 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_undotbs1_br36zdcq_.dbf
datafile 6 switched to datafile copy
input datafile copy RECID=3 STAMP=882637984 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_users_br36zdfb_.dbf
datafile 7 switched to datafile copy
input datafile copy RECID=4 STAMP=882637984 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br371frz_.dbf
datafile 16 switched to datafile copy
input datafile copy RECID=5 STAMP=882637984 file name=/u01/app/oracle/oradata/TESTCDB1/datafile/o1_mf_sysaux_br372ttf_.dbf
Leaving database unopened, as requested
Cannot remove created server parameter file
Finished Duplicate Db at 17-JUN-15
 
RMAN> exit
 
Connect to auxiliary CDB instance and check PDB existence

 
[oracle@Server dbs]$ sqlplus "/ as sysdba"
 
SQL*Plus: Release 12.1.0.1.0 Production on Wed Jun 17 17:31:47 2015
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
 
SQL> alter database open resetlogs;
Database altered.
 
SQL> show pdbs
 
    CON_ID        CON_NAME                              OPEN MODE     RESTRICTED
----------          ------------------------------      ----------          ----------
         2             PDB$SEED                               READ ONLY       NO
         3             TESTPDB                                  MOUNTED
 
Check validity of PDB by opening it

SQL> alter pluggable database testpdb open;
Pluggable database altered.
 
SQL> show pdbs
 
    CON_ID        CON_NAME                              OPEN MODE     RESTRICTED
----------          ------------------------------      ----------          ----------
         2             PDB$SEED                               READ ONLY       NO
         3             TESTPDB                                  READ WRITE     NO
 
Close the PDB to unplug it

 
SQL> alter pluggable database testpdb close immediate;
Pluggable database altered.
 
SQL> show pdbs
 
    CON_ID        CON_NAME                              OPEN MODE     RESTRICTED
----------          ------------------------------      ----------          ----------
         2             PDB$SEED                               READ ONLY       NO
         3             TESTPDB                                  MOUNTED
 
Execute unplug command to detach PDB from auxiliary CDB

 
SQL>  alter pluggable database testpdb unplug into '/tmp/testpdb.xml';
Pluggable database altered.
 
Plug PDB into Target database

 
·     Check existing PDBs

 
SQL> show pdbs
 
    CON_ID        CON_NAME                              OPEN MODE     RESTRICTED
----------          ------------------------------      ----------          ----------
         2             PDB$SEED                               READ ONLY       NO
 
Execute create pluggable database using XML file created through unplug command. Use copy command to move pdb data files to new location

SQL>  create pluggable database testpdb using '/tmp/testpdb.xml'
COPY   2  ;
Pluggable database created.
 
SQL> show pdbs
 

    CON_ID        CON_NAME                              OPEN MODE     RESTRICTED
----------          ------------------------------      ----------          ----------
         2             PDB$SEED                               READ ONLY       NO
         3             TESTPDB                                  MOUNTED
 
Summary: If Pluggable database (PDB) is dropped mistakenly in Container Database (CDB), it has to be restored through Point in time recovery (PITR) method as we recover other database objects.

----------------------------ASM 恢复                  

[oracle@rac1 ~]$ orapwd file=orapwtestcdb1 password=A#qwert#12 entries=5
[oracle@rac1 ~]$ cd $ORACLE_HOME/dbs
[oracle@rac1 dbs]$ ls -ltr orapw
ls: cannot access orapw: No such file or directory


[oracle@rac1 ~]$ pwd
/home/oracle
[oracle@rac1 ~]$
-rw-r-----. 1 oracle oinstall     6144 Jun 15 13:53 orapwtestcdb1

--没有放到合适的位置,也没用这个文件

[oracle@rac1 ~]$ cd $ORACLE_HOME/dbs
[oracle@rac1 dbs]$ cat inittestcdb1.ora
*.compatible='19.0.0.0.0'
*.control_files='+data1/TESTCDB1/controlfile/o1_mf_bfsn3k7o_.ctl'----之前没这个目录
*.db_block_size=8192
*.db_create_file_dest='+data1'----不用详细
*.db_name='testcdb1'
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=testcdb1XDB)'
*.enable_pluggable_database=true
*.open_cursors=300
*.processes=300
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'
[oracle@rac1 dbs]$ 

[oracle@rac1 dbs]$ export ORACLE_SID=testcdb1
[oracle@rac1 dbs]$ sqlplus sys/A#qwert#12 as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Sat Jun 15 13:55:32 2024
Version 19.20.0.0.0


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

Connected to an idle instance.

SQL>  startup nomount pfile=inittestcdb1.ora
ORACLE instance started.

Total System Global Area  390067064 bytes
Fixed Size                  9163640 bytes
Variable Size             339738624 bytes
Database Buffers           33554432 bytes
Redo Buffers                7610368 bytes
SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.20.0.0.0


[oracle@rac1 dbs]$ rman auxiliary sys/A#qwert#1254455        

------------password no use................

Recovery Manager: Release 19.0.0.0.0 - Production on Sat Jun 15 18:26:32 2024
Version 19.20.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

connected to auxiliary database: TESTCDB1 (DBID=1016994380)

RMAN> 

[oracle@rac1 dbs]$ rman auxiliary sys/A#qwert#12

Recovery Manager: Release 19.0.0.0.0 - Production on Sat Jun 15 13:57:56 2024
Version 19.20.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

connected to auxiliary database: TESTCDB1 (not mounted)

RMAN> Duplicate database to 'testcdb1' noopen backup location '+data1';

Starting Duplicate Db at 15-JUN-24
searching for database ID
found backup of database ID 2265125454

contents of Memory Script:
{
   sql clone "create spfile from memory";
}
executing Memory Script

sql statement: create spfile from memory

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

Oracle instance shut down

connected to auxiliary database (not started)
Oracle instance started

Total System Global Area     390067064 bytes

Fixed Size                     9163640 bytes
Variable Size                339738624 bytes
Database Buffers              33554432 bytes
Redo Buffers                   7610368 bytes

contents of Memory Script:
{
   sql clone "alter system set  db_name = 
 ''CDB'' comment=
 ''Modified by RMAN duplicate'' scope=spfile";
   sql clone "alter system set  db_unique_name = 
 ''testcdb1'' comment=
 ''Modified by RMAN duplicate'' scope=spfile";
   shutdown clone immediate;
   startup clone force nomount
   restore clone primary controlfile from  '+DATA1/CDB/AUTOBACKUP/2024_06_15/s_1171720335.532.1171677135';
   alter clone database mount;
}
executing Memory Script

sql statement: alter system set  db_name =  ''CDB'' comment= ''Modified by RMAN duplicate'' scope=spfile

sql statement: alter system set  db_unique_name =  ''testcdb1'' comment= ''Modified by RMAN duplicate'' scope=spfile

Oracle instance shut down

Oracle instance started

Total System Global Area     390067064 bytes

Fixed Size                     9163640 bytes
Variable Size                339738624 bytes
Database Buffers              33554432 bytes
Redo Buffers                   7610368 bytes

Starting restore at 15-JUN-24
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=23 device type=DISK

channel ORA_AUX_DISK_1: restoring control file
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:05
output file name=+DATA1/TESTCDB1/controlfile/o1_mf_bfsn3k7o_.ctl
Finished restore at 15-JUN-24

database mounted
released channel: ORA_AUX_DISK_1
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=23 device type=DISK
duplicating Online logs to Oracle Managed File (OMF) location
duplicating Datafiles to Oracle Managed File (OMF) location

contents of Memory Script:
{
   set until scn  9566546;
   set newname for clone datafile  1 to new;
   set newname for clone datafile  3 to new;
   set newname for clone datafile  4 to new;
   set newname for clone datafile  5 to new;
   set newname for clone datafile  6 to new;
   set newname for clone datafile  7 to new;
   set newname for clone datafile  8 to new;
   set newname for clone datafile  9 to new;
   set newname for clone datafile  10 to new;
   restore
   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

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 15-JUN-24
using channel ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00001 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00003 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00004 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00007 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00009 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00010 to +data1
channel ORA_AUX_DISK_1: reading from backup piece +DATA1/CDB/BACKUPSET/2024_06_15/nnndf0_tag20240615t134035_0.427.1171676435
channel ORA_AUX_DISK_1: piece handle=+DATA1/CDB/BACKUPSET/2024_06_15/nnndf0_tag20240615t134035_0.427.1171676435 tag=TAG20240615T134035
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:07
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00005 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00006 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00008 to +data1
channel ORA_AUX_DISK_1: reading from backup piece +DATA1/CDB/0633F844101D69CBE0636401A8C09D55/BACKUPSET/2024_06_15/nnndf0_tag20240615t134035_0.404.1171676439
channel ORA_AUX_DISK_1: piece handle=+DATA1/CDB/0633F844101D69CBE0636401A8C09D55/BACKUPSET/2024_06_15/nnndf0_tag20240615t134035_0.404.1171676439 tag=TAG20240615T134035
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:03
Finished restore at 15-JUN-24

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

datafile 1 switched to datafile copy
input datafile copy RECID=14 STAMP=1171720789 file name=+DATA1/TESTCDB1/DATAFILE/system.350.1171677579
datafile 3 switched to datafile copy
input datafile copy RECID=15 STAMP=1171720789 file name=+DATA1/TESTCDB1/DATAFILE/sysaux.506.1171677579
datafile 4 switched to datafile copy
input datafile copy RECID=16 STAMP=1171720789 file name=+DATA1/TESTCDB1/DATAFILE/undotbs1.387.1171677579
datafile 5 switched to datafile copy
input datafile copy RECID=17 STAMP=1171720789 file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/system.440.1171677587
datafile 6 switched to datafile copy
input datafile copy RECID=18 STAMP=1171720789 file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/sysaux.468.1171677587
datafile 7 switched to datafile copy
input datafile copy RECID=19 STAMP=1171720789 file name=+DATA1/TESTCDB1/DATAFILE/users.402.1171677579
datafile 8 switched to datafile copy
input datafile copy RECID=20 STAMP=1171720789 file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/undotbs1.480.1171677587
datafile 9 switched to datafile copy
input datafile copy RECID=21 STAMP=1171720789 file name=+DATA1/TESTCDB1/DATAFILE/undotbs2.431.1171677579
datafile 10 switched to datafile copy
input datafile copy RECID=22 STAMP=1171720789 file name=+DATA1/TESTCDB1/DATAFILE/undotbs3.401.1171677579

contents of Memory Script:
{
   set until scn  9566546;
   recover
   clone database
    delete archivelog
   ;
}
executing Memory Script

executing command: SET until clause

Starting recover at 15-JUN-24
using channel ORA_AUX_DISK_1

starting media recovery

archived log for thread 1 with sequence 45 is already on disk as file +DATA1/CDB/ARCHIVELOG/2024_06_15/thread_1_seq_45.540.1171676445
archived log file name=+DATA1/CDB/ARCHIVELOG/2024_06_15/thread_1_seq_45.540.1171676445 thread=1 sequence=45
media recovery complete, elapsed time: 00:00:00
Finished recover at 15-JUN-24
Oracle instance started

Total System Global Area     390067064 bytes

Fixed Size                     9163640 bytes
Variable Size                339738624 bytes
Database Buffers              33554432 bytes
Redo Buffers                   7610368 bytes

contents of Memory Script:
{
   sql clone "alter system set  db_name = 
 ''TESTCDB1'' comment=
 ''Reset to original value by RMAN'' scope=spfile";
   sql clone "alter system reset  db_unique_name scope=spfile";
}
executing Memory Script

sql statement: alter system set  db_name =  ''TESTCDB1'' comment= ''Reset to original value by RMAN'' scope=spfile

sql statement: alter system reset  db_unique_name scope=spfile
Oracle instance started

Total System Global Area     390067064 bytes

Fixed Size                     9163640 bytes
Variable Size                339738624 bytes
Database Buffers              33554432 bytes
Redo Buffers                   7610368 bytes
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "TESTCDB1" RESETLOGS ARCHIVELOG 
  MAXLOGFILES    192
  MAXLOGMEMBERS      3
  MAXDATAFILES     1024
  MAXINSTANCES    32
  MAXLOGHISTORY      292
 LOGFILE
  GROUP     1  SIZE 50 M ,
  GROUP     2  SIZE 50 M ,
  GROUP     3  SIZE 50 M ,
  GROUP     4  SIZE 50 M ,
  GROUP     5  SIZE 50 M ,
  GROUP     6  SIZE 50 M 
 DATAFILE
  '+DATA1/TESTCDB1/DATAFILE/system.350.1171677579',
  '+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/system.440.1171677587'
 CHARACTER SET AL32UTF8

sql statement: ALTER DATABASE ADD LOGFILE 
  
  
  
  
  
  INSTANCE 'i2' 
  GROUP     7  SIZE 100 M ,
  GROUP     8  SIZE 100 M 
sql statement: ALTER DATABASE ADD LOGFILE 
  
  
  
  
  
  
  INSTANCE 'i3' 
  GROUP     9  SIZE 100 M ,
  GROUP    10  SIZE 100 M 

contents of Memory Script:
{
   catalog clone datafilecopy  "+DATA1/TESTCDB1/DATAFILE/sysaux.506.1171677579", 
 "+DATA1/TESTCDB1/DATAFILE/undotbs1.387.1171677579", 
 "+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/sysaux.468.1171677587", 
 "+DATA1/TESTCDB1/DATAFILE/users.402.1171677579", 
 "+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/undotbs1.480.1171677587", 
 "+DATA1/TESTCDB1/DATAFILE/undotbs2.431.1171677579", 
 "+DATA1/TESTCDB1/DATAFILE/undotbs3.401.1171677579";
   switch clone datafile all;
}
executing Memory Script

cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/DATAFILE/sysaux.506.1171677579 RECID=1 STAMP=1171720811
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/DATAFILE/undotbs1.387.1171677579 RECID=2 STAMP=1171720811
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/sysaux.468.1171677587 RECID=3 STAMP=1171720811
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/DATAFILE/users.402.1171677579 RECID=4 STAMP=1171720811
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/undotbs1.480.1171677587 RECID=5 STAMP=1171720811
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/DATAFILE/undotbs2.431.1171677579 RECID=6 STAMP=1171720811
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/DATAFILE/undotbs3.401.1171677579 RECID=7 STAMP=1171720811

datafile 3 switched to datafile copy
input datafile copy RECID=1 STAMP=1171720811 file name=+DATA1/TESTCDB1/DATAFILE/sysaux.506.1171677579
datafile 4 switched to datafile copy
input datafile copy RECID=2 STAMP=1171720811 file name=+DATA1/TESTCDB1/DATAFILE/undotbs1.387.1171677579
datafile 6 switched to datafile copy
input datafile copy RECID=3 STAMP=1171720811 file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/sysaux.468.1171677587
datafile 7 switched to datafile copy
input datafile copy RECID=4 STAMP=1171720811 file name=+DATA1/TESTCDB1/DATAFILE/users.402.1171677579
datafile 8 switched to datafile copy
input datafile copy RECID=5 STAMP=1171720811 file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/undotbs1.480.1171677587
datafile 9 switched to datafile copy
input datafile copy RECID=6 STAMP=1171720811 file name=+DATA1/TESTCDB1/DATAFILE/undotbs2.431.1171677579
datafile 10 switched to datafile copy
input datafile copy RECID=7 STAMP=1171720811 file name=+DATA1/TESTCDB1/DATAFILE/undotbs3.401.1171677579
Leaving database unopened, as requested
Cannot remove created server parameter file
Finished Duplicate Db at 15-JUN-24

RMAN> report schema;

RMAN-06139: warning: control file is not current for REPORT SCHEMA
Report of database schema for database with db_unique_name TESTCDB1

List of Permanent Datafiles
===========================
File Size(MB) Tablespace           RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1    1180     SYSTEM               ***     +DATA1/TESTCDB1/DATAFILE/system.350.1171677579
3    1010     SYSAUX               ***     +DATA1/TESTCDB1/DATAFILE/sysaux.506.1171677579
4    615      UNDOTBS1             ***     +DATA1/TESTCDB1/DATAFILE/undotbs1.387.1171677579
5    510      PDB$SEED:SYSTEM      ***     +DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/system.440.1171677587
6    480      PDB$SEED:SYSAUX      ***     +DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/sysaux.468.1171677587
7    5        USERS                ***     +DATA1/TESTCDB1/DATAFILE/users.402.1171677579
8    215      PDB$SEED:UNDOTBS1    ***     +DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/undotbs1.480.1171677587
9    250      UNDOTBS2             ***     +DATA1/TESTCDB1/DATAFILE/undotbs2.431.1171677579
10   25       UNDOTBS3             ***     +DATA1/TESTCDB1/DATAFILE/undotbs3.401.1171677579

RMAN> exit


Recovery Manager complete.
[oracle@rac1 dbs]$ sqlplus "/ as sysdba"

SQL*Plus: Release 19.0.0.0.0 - Production on Sat Jun 15 14:00:57 2024
Version 19.20.0.0.0

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


Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.20.0.0.0

SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       MOUNTED
SQL> alter database open resetlogs;

Database altered.

SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.20.0.0.0
[oracle@rac1 dbs]$ ps -ef|grep pmon
oracle    4714     1  0 14:00 ?        00:00:00 ora_pmon_testcdb1
oracle    6270 27940  0 14:02 pts/2    00:00:00 grep --color=auto pmon
oracle   17947     1  0 13:37 ?        00:00:00 ora_pmon_cdb1
grid     31754     1  0 13:30 ?        00:00:00 asm_pmon_+ASM1
[oracle@rac1 dbs]$ s

SQL*Plus: Release 19.0.0.0.0 - Production on Sat Jun 15 14:03:18 2024
Version 19.20.0.0.0

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


Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.20.0.0.0

SQL> shutdown abort
ORACLE instance shut down.
SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.20.0.0.0
[oracle@rac1 dbs]$ ps -ef|grep pmon
oracle    8434 27940  0 14:03 pts/2    00:00:00 grep --color=auto pmon
oracle   17947     1  0 13:37 ?        00:00:00 ora_pmon_cdb1
grid     31754     1  0 13:30 ?        00:00:00 asm_pmon_+ASM1
 
[oracle@rac1 dbs]$  rman auxiliary sys/A#qwert#12
 

RMAN> startup nomount;

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of startup command at 06/15/2024 14:06:04
RMAN-06171: not connected to target database

RMAN> startup  nomount pfile=inittestcdb1.ora  force

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of startup command at 06/15/2024 18:28:40
RMAN-06171: not connected to target database

RMAN> 

----------------------带PDB的恢复----------------------------


Recovery Manager complete.
[oracle@rac1 dbs]$ s

SQL*Plus: Release 19.0.0.0.0 - Production on Sat Jun 15 14:06:13 2024
Version 19.20.0.0.0

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

Connected to an idle instance.

SQL>  startup nomount pfile=inittestcdb1.ora
ORACLE instance started.

Total System Global Area  390067064 bytes
Fixed Size                  9163640 bytes
Variable Size             339738624 bytes
Database Buffers           33554432 bytes
Redo Buffers                7610368 bytes
SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.20.0.0.0
[oracle@rac1 dbs]$ rman target /

Recovery Manager: Release 19.0.0.0.0 - Production on Sat Jun 15 14:06:29 2024
Version 19.20.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

connected to target database: TESTCDB1 (not mounted)

RMAN>  Duplicate database to 'testcdb1' noopen backup location '+data1';

Starting Duplicate Db at 15-JUN-24
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 06/15/2024 14:06:35
RMAN-05501: aborting duplication of target database
RMAN-06174: not connected to auxiliary database

RMAN> exit
  

Recovery Manager complete.
[oracle@rac1 dbs]$ s

SQL*Plus: Release 19.0.0.0.0 - Production on Sat Jun 15 14:07:24 2024
Version 19.20.0.0.0

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

Connected to an idle instance.

SQL>  startup nomount pfile=inittestcdb1.ora
ORACLE instance started.

Total System Global Area  390067064 bytes
Fixed Size                  9163640 bytes
Variable Size             339738624 bytes
Database Buffers           33554432 bytes
Redo Buffers                7610368 bytes
SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.20.0.0.0
[oracle@rac1 dbs]$  rman auxiliary sys/A#qwert#12

Recovery Manager: Release 19.0.0.0.0 - Production on Sat Jun 15 14:07:41 2024
Version 19.20.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

connected to auxiliary database: TESTCDB1 (not mounted)

RMAN>  Duplicate database to 'testcdb1' noopen backup location '+data1';

Starting Duplicate Db at 15-JUN-24
searching for database ID
found backup of database ID 2265125454

contents of Memory Script:
{
   sql clone "create spfile from memory";
}
executing Memory Script

sql statement: create spfile from memory

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

Oracle instance shut down

connected to auxiliary database (not started)
Oracle instance started

Total System Global Area     390067064 bytes

Fixed Size                     9163640 bytes
Variable Size                339738624 bytes
Database Buffers              33554432 bytes
Redo Buffers                   7610368 bytes

contents of Memory Script:
{
   sql clone "alter system set  db_name = 
 ''CDB'' comment=
 ''Modified by RMAN duplicate'' scope=spfile";
   sql clone "alter system set  db_unique_name = 
 ''testcdb1'' comment=
 ''Modified by RMAN duplicate'' scope=spfile";
   shutdown clone immediate;
   startup clone force nomount
   restore clone primary controlfile from  '+DATA1/CDB/AUTOBACKUP/2024_06_15/s_1171721115.429.1171677915';
   alter clone database mount;
}
executing Memory Script

sql statement: alter system set  db_name =  ''CDB'' comment= ''Modified by RMAN duplicate'' scope=spfile

sql statement: alter system set  db_unique_name =  ''testcdb1'' comment= ''Modified by RMAN duplicate'' scope=spfile

Oracle instance shut down

Oracle instance started

Total System Global Area     390067064 bytes

Fixed Size                     9163640 bytes
Variable Size                339738624 bytes
Database Buffers              33554432 bytes
Redo Buffers                   7610368 bytes

Starting restore at 15-JUN-24
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=23 device type=DISK

channel ORA_AUX_DISK_1: restoring control file
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:05
output file name=+DATA1/TESTCDB1/controlfile/o1_mf_bfsn3k7o_.ctl
Finished restore at 15-JUN-24

database mounted
released channel: ORA_AUX_DISK_1
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=23 device type=DISK
duplicating Online logs to Oracle Managed File (OMF) location
duplicating Datafiles to Oracle Managed File (OMF) location
datafile 60 not processed because file is offline
datafile 61 not processed because file is offline

contents of Memory Script:
{
   set until scn  9569022;
   set newname for clone datafile  1 to new;
   set newname for clone datafile  3 to new;
   set newname for clone datafile  4 to new;
   set newname for clone datafile  5 to new;
   set newname for clone datafile  6 to new;
   set newname for clone datafile  7 to new;
   set newname for clone datafile  8 to new;
   set newname for clone datafile  9 to new;
   set newname for clone datafile  10 to new;
   set newname for clone datafile  59 to new;
   restore
   clone database
   skip forever tablespace  "TESTPDB":"UNDOTBS1",
 "TESTPDB":"SYSAUX"   ;
}
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

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 15-JUN-24
using channel ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00001 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00003 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00004 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00007 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00009 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00010 to +data1
channel ORA_AUX_DISK_1: reading from backup piece +DATA1/CDB/BACKUPSET/2024_06_15/nnndf0_tag20240615t140505_0.424.1171677905
channel ORA_AUX_DISK_1: piece handle=+DATA1/CDB/BACKUPSET/2024_06_15/nnndf0_tag20240615t140505_0.424.1171677905 tag=TAG20240615T140505
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:07
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00005 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00006 to +data1
channel ORA_AUX_DISK_1: restoring datafile 00008 to +data1
channel ORA_AUX_DISK_1: reading from backup piece +DATA1/CDB/0633F844101D69CBE0636401A8C09D55/BACKUPSET/2024_06_15/nnndf0_tag20240615t140505_0.492.1171677909
channel ORA_AUX_DISK_1: piece handle=+DATA1/CDB/0633F844101D69CBE0636401A8C09D55/BACKUPSET/2024_06_15/nnndf0_tag20240615t140505_0.492.1171677909 tag=TAG20240615T140505
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:03
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00059 to +data1
channel ORA_AUX_DISK_1: reading from backup piece +DATA1/CDB/1AE8818E8B712414E0636401A8C00D9E/BACKUPSET/2024_06_15/nnndf0_tag20240615t140505_0.753.1171677911
channel ORA_AUX_DISK_1: piece handle=+DATA1/CDB/1AE8818E8B712414E0636401A8C00D9E/BACKUPSET/2024_06_15/nnndf0_tag20240615t140505_0.753.1171677911 tag=TAG20240615T140505
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
Finished restore at 15-JUN-24

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

datafile 1 switched to datafile copy
input datafile copy RECID=15 STAMP=1171721336 file name=+DATA1/TESTCDB1/DATAFILE/system.437.1171678125
datafile 3 switched to datafile copy
input datafile copy RECID=16 STAMP=1171721336 file name=+DATA1/TESTCDB1/DATAFILE/sysaux.539.1171678125
datafile 4 switched to datafile copy
input datafile copy RECID=17 STAMP=1171721336 file name=+DATA1/TESTCDB1/DATAFILE/undotbs1.367.1171678125
datafile 5 switched to datafile copy
input datafile copy RECID=18 STAMP=1171721336 file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/system.446.1171678133
datafile 6 switched to datafile copy
input datafile copy RECID=19 STAMP=1171721336 file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/sysaux.449.1171678133
datafile 7 switched to datafile copy
input datafile copy RECID=20 STAMP=1171721336 file name=+DATA1/TESTCDB1/DATAFILE/users.391.1171678125
datafile 8 switched to datafile copy
input datafile copy RECID=21 STAMP=1171721336 file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/undotbs1.456.1171678133
datafile 9 switched to datafile copy
input datafile copy RECID=22 STAMP=1171721336 file name=+DATA1/TESTCDB1/DATAFILE/undotbs2.439.1171678125
datafile 10 switched to datafile copy
input datafile copy RECID=23 STAMP=1171721336 file name=+DATA1/TESTCDB1/DATAFILE/undotbs3.497.1171678125
datafile 59 switched to datafile copy
input datafile copy RECID=24 STAMP=1171721336 file name=+DATA1/TESTCDB1/1AE8818E8B712414E0636401A8C00D9E/DATAFILE/system.457.1171678135

contents of Memory Script:
{
   set until scn  9569022;
   recover
   clone database
   skip forever tablespace  "TESTPDB":"UNDOTBS1",
 "TESTPDB":"SYSAUX"    delete archivelog
   ;
}
executing Memory Script

executing command: SET until clause

Starting recover at 15-JUN-24
using channel ORA_AUX_DISK_1

Executing: alter database datafile 60, 61 offline drop
starting media recovery

archived log for thread 1 with sequence 47 is already on disk as file +DATA1/CDB/ARCHIVELOG/2024_06_15/thread_1_seq_47.275.1171677915
archived log file name=+DATA1/CDB/ARCHIVELOG/2024_06_15/thread_1_seq_47.275.1171677915 thread=1 sequence=47
media recovery complete, elapsed time: 00:00:00
Finished recover at 15-JUN-24
Oracle instance started

Total System Global Area     390067064 bytes

Fixed Size                     9163640 bytes
Variable Size                339738624 bytes
Database Buffers              33554432 bytes
Redo Buffers                   7610368 bytes

contents of Memory Script:
{
   sql clone "alter system set  db_name = 
 ''TESTCDB1'' comment=
 ''Reset to original value by RMAN'' scope=spfile";
   sql clone "alter system reset  db_unique_name scope=spfile";
}
executing Memory Script

sql statement: alter system set  db_name =  ''TESTCDB1'' comment= ''Reset to original value by RMAN'' scope=spfile

sql statement: alter system reset  db_unique_name scope=spfile
Oracle instance started

Total System Global Area     390067064 bytes

Fixed Size                     9163640 bytes
Variable Size                339738624 bytes
Database Buffers              33554432 bytes
Redo Buffers                   7610368 bytes
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "TESTCDB1" RESETLOGS ARCHIVELOG 
  MAXLOGFILES    192
  MAXLOGMEMBERS      3
  MAXDATAFILES     1024
  MAXINSTANCES    32
  MAXLOGHISTORY      292
 LOGFILE
  GROUP     1  SIZE 50 M ,
  GROUP     2  SIZE 50 M ,
  GROUP     3  SIZE 50 M ,
  GROUP     4  SIZE 50 M ,
  GROUP     5  SIZE 50 M ,
  GROUP     6  SIZE 50 M 
 DATAFILE
  '+DATA1/TESTCDB1/DATAFILE/system.437.1171678125',
  '+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/system.446.1171678133',
  '+DATA1/TESTCDB1/1AE8818E8B712414E0636401A8C00D9E/DATAFILE/system.457.1171678135'
 CHARACTER SET AL32UTF8

sql statement: ALTER DATABASE ADD LOGFILE 
  
  
  
  
  
  INSTANCE 'i2' 
  GROUP     7  SIZE 100 M ,
  GROUP     8  SIZE 100 M 
sql statement: ALTER DATABASE ADD LOGFILE 
  
  
  
  
  
  
  INSTANCE 'i3' 
  GROUP     9  SIZE 100 M ,
  GROUP    10  SIZE 100 M 

contents of Memory Script:
{
   catalog clone datafilecopy  "+DATA1/TESTCDB1/DATAFILE/sysaux.539.1171678125", 
 "+DATA1/TESTCDB1/DATAFILE/undotbs1.367.1171678125", 
 "+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/sysaux.449.1171678133", 
 "+DATA1/TESTCDB1/DATAFILE/users.391.1171678125", 
 "+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/undotbs1.456.1171678133", 
 "+DATA1/TESTCDB1/DATAFILE/undotbs2.439.1171678125", 
 "+DATA1/TESTCDB1/DATAFILE/undotbs3.497.1171678125";
   switch clone datafile all;
}
executing Memory Script

cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/DATAFILE/sysaux.539.1171678125 RECID=1 STAMP=1171721357
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/DATAFILE/undotbs1.367.1171678125 RECID=2 STAMP=1171721357
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/sysaux.449.1171678133 RECID=3 STAMP=1171721357
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/DATAFILE/users.391.1171678125 RECID=4 STAMP=1171721357
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/undotbs1.456.1171678133 RECID=5 STAMP=1171721357
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/DATAFILE/undotbs2.439.1171678125 RECID=6 STAMP=1171721357
cataloged datafile copy
datafile copy file name=+DATA1/TESTCDB1/DATAFILE/undotbs3.497.1171678125 RECID=7 STAMP=1171721357

datafile 3 switched to datafile copy
input datafile copy RECID=1 STAMP=1171721357 file name=+DATA1/TESTCDB1/DATAFILE/sysaux.539.1171678125
datafile 4 switched to datafile copy
input datafile copy RECID=2 STAMP=1171721357 file name=+DATA1/TESTCDB1/DATAFILE/undotbs1.367.1171678125
datafile 6 switched to datafile copy
input datafile copy RECID=3 STAMP=1171721357 file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/sysaux.449.1171678133
datafile 7 switched to datafile copy
input datafile copy RECID=4 STAMP=1171721357 file name=+DATA1/TESTCDB1/DATAFILE/users.391.1171678125
datafile 8 switched to datafile copy
input datafile copy RECID=5 STAMP=1171721357 file name=+DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/undotbs1.456.1171678133
datafile 9 switched to datafile copy
input datafile copy RECID=6 STAMP=1171721357 file name=+DATA1/TESTCDB1/DATAFILE/undotbs2.439.1171678125
datafile 10 switched to datafile copy
input datafile copy RECID=7 STAMP=1171721357 file name=+DATA1/TESTCDB1/DATAFILE/undotbs3.497.1171678125
Leaving database unopened, as requested
Cannot remove created server parameter file
Finished Duplicate Db at 15-JUN-24

RMAN> report schema;

RMAN-06139: warning: control file is not current for REPORT SCHEMA
Report of database schema for database with db_unique_name TESTCDB1

List of Permanent Datafiles
===========================
File Size(MB) Tablespace           RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1    1180     SYSTEM               ***     +DATA1/TESTCDB1/DATAFILE/system.437.1171678125
3    1010     SYSAUX               ***     +DATA1/TESTCDB1/DATAFILE/sysaux.539.1171678125
4    615      UNDOTBS1             ***     +DATA1/TESTCDB1/DATAFILE/undotbs1.367.1171678125
5    510      PDB$SEED:SYSTEM      ***     +DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/system.446.1171678133
6    480      PDB$SEED:SYSAUX      ***     +DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/sysaux.449.1171678133
7    5        USERS                ***     +DATA1/TESTCDB1/DATAFILE/users.391.1171678125
8    215      PDB$SEED:UNDOTBS1    ***     +DATA1/TESTCDB1/0633F844101D69CBE0636401A8C09D55/DATAFILE/undotbs1.456.1171678133
9    250      UNDOTBS2             ***     +DATA1/TESTCDB1/DATAFILE/undotbs2.439.1171678125
10   25       UNDOTBS3             ***     +DATA1/TESTCDB1/DATAFILE/undotbs3.497.1171678125
59   510      _###_UNKNOWN_PDB_#_3:SYSTEM ***     +DATA1/TESTCDB1/1AE8818E8B712414E0636401A8C00D9E/DATAFILE/system.457.1171678135

RMAN> exit


Recovery Manager complete.
[oracle@rac1 dbs]$ s

SQL*Plus: Release 19.0.0.0.0 - Production on Sat Jun 15 14:09:43 2024
Version 19.20.0.0.0

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


Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.20.0.0.0

SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       MOUNTED
         3 _###_UNKNOWN_PDB_#_3           MOUNTED

----没有resetlogs前名字不对
SQL> alter database open resetlogs;

Database altered.

SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 TESTPDB                        MOUNTED
SQL> alter pluggable database testpdb open;
alter pluggable database testpdb open
*
ERROR at line 1:
ORA-65104: operation not allowed on an inactive pluggable database


SQL>  alter pluggable database testpdb unplug into '/tmp/testpdb.xml';
 alter pluggable database testpdb unplug into '/tmp/testpdb.xml'
*
ERROR at line 1:
ORA-65104: operation not allowed on an inactive pluggable database


SQL> 

这篇关于19C之前恢复drop 掉的PDB 创建另一个实例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1064743

相关文章

MySQL多实例管理如何在一台主机上运行多个mysql

《MySQL多实例管理如何在一台主机上运行多个mysql》文章详解了在Linux主机上通过二进制方式安装MySQL多实例的步骤,涵盖端口配置、数据目录准备、初始化与启动流程,以及排错方法,适用于构建读... 目录一、什么是mysql多实例二、二进制方式安装MySQL1.获取二进制代码包2.安装基础依赖3.清

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

Apache Ignite缓存基本操作实例详解

《ApacheIgnite缓存基本操作实例详解》文章介绍了ApacheIgnite中IgniteCache的基本操作,涵盖缓存获取、动态创建、销毁、原子及条件更新、异步执行,强调线程池注意事项,避免... 目录一、获取缓存实例(Getting an Instance of a Cache)示例代码:二、动态

IntelliJ IDEA2025创建SpringBoot项目的实现步骤

《IntelliJIDEA2025创建SpringBoot项目的实现步骤》本文主要介绍了IntelliJIDEA2025创建SpringBoot项目的实现步骤,文中通过示例代码介绍的非常详细,对大家... 目录一、创建 Spring Boot 项目1. 新建项目2. 基础配置3. 选择依赖4. 生成项目5.

JSONArray在Java中的应用操作实例

《JSONArray在Java中的应用操作实例》JSONArray是org.json库用于处理JSON数组的类,可将Java对象(Map/List)转换为JSON格式,提供增删改查等操作,适用于前后端... 目录1. jsONArray定义与功能1.1 JSONArray概念阐释1.1.1 什么是JSONA

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

创建Java keystore文件的完整指南及详细步骤

《创建Javakeystore文件的完整指南及详细步骤》本文详解Java中keystore的创建与配置,涵盖私钥管理、自签名与CA证书生成、SSL/TLS应用,强调安全存储及验证机制,确保通信加密和... 目录1. 秘密键(私钥)的理解与管理私钥的定义与重要性私钥的管理策略私钥的生成与存储2. 证书的创建与

使用Python实现可恢复式多线程下载器

《使用Python实现可恢复式多线程下载器》在数字时代,大文件下载已成为日常操作,本文将手把手教你用Python打造专业级下载器,实现断点续传,多线程加速,速度限制等功能,感兴趣的小伙伴可以了解下... 目录一、智能续传:从崩溃边缘抢救进度二、多线程加速:榨干网络带宽三、速度控制:做网络的好邻居四、终端交互

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试