Duplicate a controlfile in ASM
1. Identify the location of the current controlfile:
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
+DATA2/archgrd/controlfile/current.268.1000399643
2. Stop the Database and startup in nomount state:
SQL> shut immediate;
SQL> startup nomount;
3. Use RMAN to duplicate the controlfile:
RMAN> restore controlfile to '+DATA' from '/+DATA2/archgrd/controlfile/current.268.1000399643';
4.Show Location Of New Control Files:
$ asmcmd
ASMCMD> find --type controlfile . *
+DATA/ARCHGRD/CONTROLFILE/current.920.1072880265
+DATA2/ARCHGRD/CONTROLFILE/current.268.1000399643
5. On the database:
SQL> alter system set
control_files='+DATA2/ARCHGRD/CONTROLFILE/current.268.1000399643','+DATA/ARCHGRD/CONTROLFILE/current.920.1072880265' scope=spfile;
SQL> shut immediate;
SQL> startup;
6. Verify that new control file has been recognized:
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
+DATA2/archgrd/controlfile/current.268.1000399643
+DATA/archgrd/controlfile/current.920.1072880265