Oracle 11.2.0.3 RAC DB backup failing with the following error:
Error
Mon Oct 07 01:03:28 2013 Errors in file /u01/app/oracle/diag/rdbms/testdb/TESTDB1/trace/TESTDB1_ora_25286.trc: ORA-00245: control file backup failed; target is likely on a local file system
Cause
This is down to the snapshot controlfile being on a local disk and it needs to be on a shared disk for all of the cluster in our case we need to put it on our +FLASH ASM diskgroup
FIX
So to fix the issue we need to configure the SNAPSHOT CONTROLFILE to the +FLASH ASM diskgroup in RMAN, this is done as follows:
RMAN> show all; using target database control file instead of recovery catalog RMAN configuration parameters for database with db_unique_name TESTDB are: CONFIGURE RETENTION POLICY TO REDUNDANCY 3; CONFIGURE BACKUP OPTIMIZATION ON; CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE MAXSETSIZE TO UNLIMITED; # default CONFIGURE ENCRYPTION FOR DATABASE OFF; # default CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0.3/dbs/snapcf_TESTDB1.f'; # default RMAN> configure snapshot controlfile name to '+FLASH/snapcf_TESTDB1.f'; new RMAN configuration parameters: CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+FLASH/snapcf_TESTDB1.f'; new RMAN configuration parameters are successfully stored RMAN> RMAN> show all ; RMAN configuration parameters for database with db_unique_name TESTDB are: CONFIGURE RETENTION POLICY TO REDUNDANCY 3; CONFIGURE BACKUP OPTIMIZATION ON; CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE MAXSETSIZE TO UNLIMITED; # default CONFIGURE ENCRYPTION FOR DATABASE OFF; # default CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+FLASH/snapcf_TESTDB1.f';
Run a backup and check the file is created in the +FLASH diskgroup using asmcmd
oracle@testdb01tst /export/home/oracle $ asmcmd ASMCMD> ls DATA/ FLASH/ ASMCMD> cd FLASH/ ASMCMD> ls -l Type Redund Striped Time Sys Name Y TESTDB/ Y TESTDBTST/ N snapcf_testdb1.f => +FLASH/TESTDB/CONTROLFILE/Backup.302.828871329