Monday, October 26, 2009

Managing control files in ASM

Copying Control File to Other locations
Just a couple of notes on how to create multiple ASM control files and moving control files to a different diskgroup.
Assuming we already have a ASM control file in the DATA diskgroup and we wish to add one to the FRA diskgroup

SQL>show parameter control_files

+DATA/SID/controlfile/current.730.698514673

SQL>alter system set control_files='+DATA','+FRA' scope=spfile;

SQL>shutdown immediate;

SQL>startup nomount;

SQL>exit

rman target

RMAN>restore controlfile from '+DATAHR/SID/CONTROLFILE/current.730.698514673';

SQL>alter database mount;

SQL>alter database open;

SQL>show parameter control_files

+DATA/SID/controlfile/current.730.698514673, +FRAHR/SID/controlfile/current.766.698514673


Moving Control File to Other locations

Here is an example of how to migrate from one ASM diskgroup to another Add the new disk discovery path in (if needed), create a diskgroup and add disks

SQL>alter system set asm_diskstring='/dev/oracle','/dev/oracle_hr/r*';

SQL>create diskgroup DATANEW  external redundancy disk '/dev/oracle_hr/rdisk1','/dev/oracle_hr/rdisk2';

SQL>show parameter control_files

control_files                 string     

+DATA10/SID/controlfile/current.796.695384211


SQL>alter system set CONTROL_FILES = '+DATANEW' scope=spfile

SQL>shutdown

rman target /

RMAN>startup nomount

RMAN>restore controlfile  from  '/+DATA/SID/controlfile/current.796.695384211';

SQL>alter database mount;

SQL>alter database open;