Point In Time Recovery On Pluggable Database CONFIGURE DEVICE TYPE
For the purposes of this document, the following fictitious environment is used as an example to describe the procedure:
Pluggable Database Name: TEST_PDB
*********************
Patch 19809171 applied but still facing RMAN-06813
run {
allocate channel ch1 device type disk;
set until time='15:11:17 11:26:00';
restore pluggable database TEST_PDB;
recover pluggable database TEST_PDB;
alter pluggable database TEST_PDB open resetlogs;
release channel ch1;
}
...
Starting restore at 2017-11-15_11:53:43
released channel: ch1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 11/15/2017 11:53:43
RMAN-06813: could not translate pluggable database TEST_PDB
Cause
Incorrect command followed to recover dropped PDB after applying patch 19809171
不需要先restore,CDB里面没有pdb的信息了
Solution
Try below command to recover dropped PDB
CONFIGURE DEVICE TYPE DISK PARALLELISM 4 BACKUP TYPE TO BACKUPSET;
run {
set until time='15:11:17 11:26:00';
recover pluggable database TEST_PDB;
}
There might be chance that you may encounter RMAN-00600 [7038] [pdbpitr_recover3] during the recovery .In that case suggest to refer document 2329008.1 for the workaround / fix
RMAN-00600 [7038] [pdbpitr_recover3] (Doc ID 2329008.1)
------------------------------
Symptoms
PDB(Pluggable database) PITR fails with below error
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 01/20/2017 09:55:29
RMAN-03015: error occurred in stored script Memory Script
RMAN-06034: at least 1 channel must be allocated to execute this command
Changes
Cause
NOTE: In the images and/or the document content below, the user information and environment data used represents fictitious data from the Oracle sample schema(s), Public Documentation delivered with an Oracle database product or other training material. Any similarity to actual environments, actual persons, living or dead, is purely coincidental and not intended in any manner.
The issue is caused because Manual channels have been allocated for PDB PITR .
PDB PITR creates creates auxiliary instance automatically which does the Point in time recovery using automatic channels based on the configuration information in Rman.
run {
allocate channel t1 type 'sbt_tape';
allocate channel t2 type 'sbt_tape';
set until time "to_date('JAN 12 2017 03:00:00','MON DD YYYY HH24:MI:SS')";
restore pluggable database <pdb_name>;
recover pluggable database <pdb_name>;
alter pluggable database <pdb_name> open resetlogs; }
Solution
You cannot manually allocate a channel when RMAN will implicitly create the auxiliary instance.
Solution in this case :-
Disk backup
-----------------
If the backups are available on disk and your disk channels have been configured as default you can run the below
run { set until time "to_date('JAN 12 2017 03:00:00','MON DD YYYY HH24:MI:SS')";
restore pluggable database <pdb_name>;
recover pluggable database <pdb_name>;
alter pluggable database <pdb_name> open resetlogs; }
Sbt backup
--------------------
If the backups are on Tape and you have default channel in Rman configuration set to disk then change it temporarily to sbt
Rman> Connect target /
Rman>show device type;
Rman> CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' send 'NB_ORA_POLICY................<as per your configuration>.....' ;
Re-run the PDB PITR without any channels
run { set until time "to_date('JAN 12 2017 03:00:00','MON DD YYYY HH24:MI:SS')";
restore pluggable database <pdb_name>;
recover pluggable database <pdb_name>;
alter pluggable database <pdb_name> open resetlogs; }
In this Document