Problem
if when restoring a database which has a mixture of OMF and NON OMF datafiles
you come across this error
channel c1: ORA-19870: error while restoring backup piece bk_6559_1_906629460 ORA-19504: failed to create file "+ASM_DATA/HFMP/DATAFILE/oddevcontent.dbf" ORA-17502: ksfdcre:3 Failed to create file +ASM_DATA/HFMP/DATAFILE/oddevcontent.dbf ORA-15001: diskgroup "ASM_DATA" does not exist or is not mounted ORA-15001: diskgroup "ASM_DATA" does not exist or is not mounted failover to previous backup Recovery catalog is down or not connected to catalog, trying to reconnect. Reconnection with the recovery catalog is successful. RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-00601: fatal error in recovery manager RMAN-03012: fatal error during compilation of command RMAN-03028: fatal error code for command restore : 600 RMAN-00600: internal error, arguments [7530] [] [] [] [] [orahfm@rac1 (LMT:hfmp1) HFMP_20160329 ] $ [orahfm@rac1 (LMT:hfmp1) HFMP_20160329 ] $
Solution
The solution is to use “SET NEWNAME” when restoring non-OMF files. If using OMF files
then only the DB_CREATE_FILE_DEST needs to be set. But when it is a mixed env you must
use “SET NEWNAME” for all non-OMF datafiles that will be restored.
Eg
set newname for DATAFILE 7 to ‘+PRE_ASM_DATA/HFMP/DATAFILE/oddevcontent.dbf’;
switch DATAFILE 7 to datafilecopy ‘+PRE_ASM_DATA/HFMP/DATAFILE/oddevcontent.dbf’;