ORA-15032 , ORA-15017 , ORA- 15040 , ASM Disk-group not found!!
Hello friends, this is something fun which I came across, while trying to troubleshoot an ASM issue.
Usually we know that the diskgroups are an important entity of the ASM infrastructure and working of the database depends a lot upon them.
This particular issue was seen on the standalone ASM database. The ASM diskgroup was nowhere to be found while querying the v$asm_diskgroup and v$asm_disks dynamic tables.
Cause?
There was a change in the hostname of the server, we had to reconfigure the Oracle restart.
Post the changes, we ran the crsctl stat res -t command to check the status of the resources.
--------------------------------------------------------------------------------NAME TARGET STATE SERVER STATE_DETAILS ----------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------ora.asm ONLINE ONLINE testdev03 Started ora.ons OFFLINE OFFLINE testdev03 --------------------------------------------------------------------------------Cluster Resources -------------------------------------------------------------------------------ora.cssd 1 ONLINE ONLINE testdev03 ora.diskmon 1 OFFLINE OFFLINE ora.evmd 1 ONLINE ONLINE testdev03
Although the ASM is started, we can enter the asmcmd but the mount-points were not visible and mounting the disk-groups manually fails.
SYS@+ASM> alter diskgroup DATA mount; alter diskgroup DATA mount*ERROR at line 1:ORA-15032: not all alterations performed ORA-15017: diskgroup "DATA" cannot be mounted ORA-15040: diskgroup is incomplete
Check the asm_diskstring parameter,
show parameter asm_diskstring. If the output is ORCL:*
So to overcome this issue, we have to change the asm_diskstring parameter.
cd $GRID_HOME/bin kfod asm_diskstring='/dev/oracleasm/disks/*' disks=all -------------------------------------------------------------------------------- Disk Size Path User Group ================================================================================ 1: 204800 Mb /dev/oracleasm/disks/ASMDISK01 oracle dba 2: 204800 Mb /dev/oracleasm/disks/ASMDISK02 oracle dba 3: 204800 Mb /dev/oracleasm/disks/ASMDISK03 oracle dba 4: 204800 Mb /dev/oracleasm/disks/ASMDISK04 oracle dba 5: 204800 Mb /dev/oracleasm/disks/ASMDISK05 oracle dba 6: 204800 Mb /dev/oracleasm/disks/ASMDISK06 oracle dba 7: 204800 Mb /dev/oracleasm/disks/ASMDISK07 oracle dba 8: 204800 Mb /dev/oracleasm/disks/ASMDISK08 oracle dba 9: 204800 Mb /dev/oracleasm/disks/ASMDISK09 oracle dba -------------------------------------------------------------------------------- ORACLE_SID ORACLE_HOME ================================================================================ +ASM /u01/app/oracle/product/19.0.0.0/grid_home
Log in to the ASM instance as sysasm and set the asm_diskstring to what it was:
SQL> alter system set asm_diskstring='/dev/oracleasm/disks/*' scope=memory; System altered. SQL> select name, state from v$asm_diskgroup; NAME STATE ------------------------------ ----------- DATA DISMOUNTED FRA DISMOUNTED SQL> alter diskgroup DATA mount; Diskgroup altered. SQL> alter diskgroup FRA mount; Diskgroup altered. SYS@+ASM> select name, state from v$asm_diskgroup; NAME STATE ------------------------------ ----------- DATA MOUNTED FRA MOUNTED
This is how the issue got resolved and the disks were visible again.
Comments
Post a Comment