The Problem
1) On ASM 11gR2 the ASM spfile initialization parameter file is now stored in the first created diskgroup (e.g. DATA). For example:
SQL> show parameter instance_type NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ instance_type string asm
SQL> show parameter spfile NAME TYPE VALUE ------------------------------------ ----------- ------------------------------------------------- spfile string +DATA/asm/asmparameterfile/registry.253.697740955
2) If for any reason the ASM spfile is missing, you will not be able to start the ASM instance.
The Solution
ASM spfile initialization parameter file is now stored in the first created diskgroup (e.g. DATA) so if the ASM instance is not started and the diskgroup is not mounted you cannot recreate the spfile. But you can use the next procedure to solve the problem:
1. Create a temporary pfile using the minimum parameters:
+ASM:oracle:GRID_11gR2>vi asm.ora +ASM.asm_diskgroups='OLTP','FRA' *.asm_diskstring='ORCL:*' *.asm_power_limit=1 *.diagnostic_dest='/u01/app/oracle' *.instance_type='asm' *.large_pool_size=12M #*.local_listener='LISTENER_+ASM' *.remote_login_passwordfile='EXCLUSIVE'
2. Startup the ASM instance using the new pfile:
+ASM:oracle:GRID_11gR2> sqlplus '/as sysasm' SQL*Plus: Release 11.2.0.1.0 Production on Wed Sep 16 16:53:57 2009 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production With the Automatic Storage Management option SQL> startup pfile=asm.ora
3. Then recreate the ASM spfile as follow:
SQL> create spfile='+DATA' from pfile='asm.ora'; File created.
4. Check the new spfile thru ASMCMD as well:
+ASM:oracle:GRID_11gR2>asmcmd ASMCMD> cd +DATA/asm/asmparameterfile/ ASMCMD> ls REGISTRY.253.697740955
5. Restart the ASM instance using the new spfile:
+ASM:oracle:GRID_11gR2> sqlplus '/as sysasm' SQL*Plus: Release 11.2.0.1.0 Production on Wed Sep 16 16:53:57 2009 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production With the Automatic Storage Management option SQL> shutdown immediate SQL> startup SQL> show parameter spfile NAME TYPE VALUE ------------------------------------ ----------- ------------------------------------------------- spfile string +DATA/asm/asmparameterfile/registry.253.697740955