четверг, 19 ноября 2015 г.

Fix ASM diskgroup discovery string to ORCL:*

Issue
$ srvctl config asm
ASM home: /u01/app/oracle/product/11.2.0/grid_1
ASM listener: LISTENER
Spfile: +DATA/asm/asmparameterfile/registry.253.811613369
ASM diskgroup discovery string: /dev/oracleasm/disks/*

$ sqlplus "/as sysasm"
SQL> show parameter asm_diskstring;
asm_diskstring                       string      /dev/oracleasm/disks/*

Solution
1. Install for OEL 6.x
wget http://download.oracle.com/otn_software/asmlib/oracleasmlib-2.0.12-1.el6.x86_64.rpm

rpm -ihv oracleasmlib-2.0.12-1.el6.x86_64.rpm

2. Check visibility from asm user (grid)
oracleasm-discover
Using ASMLib from /opt/oracle/extapi/64/asm/orcl/1/libasm.so
[ASM Library - Generic Linux, version 2.0.12 (KABI_V2)]
Discovered disk: ORCL:DISK1 [2933593688 blocks (1501999968256 bytes), maxio 512, integrity none]
Discovered disk: ORCL:DISK2 [838858752 blocks (429495681024 bytes), maxio 512, integrity none]
Discovered disk: ORCL:DISK3 [2936005222 blocks (1503234673664 bytes), maxio 512, integrity none]

3. Set asm instance parameter for discover
sqlplus "/as sysasm"
ALTER SYSTEM SET asm_diskstring='ORCL:*' SCOPE=SPFILE;

4. Restart asm instance
srvctl stop asm -f
srvctl start asm

5. Check
srvctl config asm
ASM diskgroup discovery string: ORCL:*