ORA-29786: SIHA attribute GET failed with Error If 11gR2 ASM instance is created manually

来源:互联网 发布:食品网络经营管理办法 编辑:程序博客网 时间:2024/05/23 21:14

Symptoms

After creating an initial parameter file init+ASM.ora manually and starting an ASM instance, certain ASM commands fails with ORA-29786 in sqlplus:

sqlplus / as sysasm
SQL> create spfile='$ORACLE_HOME/spfile+ASM.ora' from pfile='$ORACLE_HOME/dbs/init+ASM.ora';
create spfile='$ORACLE_HOME/spfile+ASM.ora' from pfile='$ORACLE_HOME/dbs/init+ASM.ora'
*
ERROR at line 1:
ORA-29786: SIHA attribute GET failed with error [Attribute 'SPFILE' sts[200]
lsts[0]]


SQL> create diskgroup dg1 normal redundancy disk'/opt/oracle/oradata/nobilldb/DG1_dev0' disk'/opt/oracle/oradata/nobilldb/DG1_dev1';

Diskgroup created.

SQL> drop diskgroup dg1;
drop diskgroup dg1
*
ERROR at line 1:
ORA-15039: diskgroup not dropped
ORA-29786: SIHA attribute GET failed with error [Attribute 'SPFILE' sts[200]
lsts[0]]

Better option to create ASM instance is to run asmca in GUI/Silent mode.

Changes

Starting with 11gR2, ASM instance is a resoure in CRS repository also in single instance installations. Hence, it must be registered to OCR before doing certain operations like create/drop diskgroup, create pfile/spfile, etc.

Cause

ASM instance is created and started manually but it is not registered to cluster repository.

Solution

If ASM instance is created manually, add ASM instance to CRS repository with srvctl add asm:

srvctl add asm  -p $ORACLE_HOME/dbs/init+ASM.ora

srvctl add asm -h -- will give the options
 
 
小白注: 在grid用户下,出错时执行命令:crs_stat -t 显示如下:
grid@linux177:/opt/oracrs/product/11gR2/grid/bin> crs_stat -t
Name           Type           Target    State     Host
------------------------------------------------------------
ora.cssd       ora.cssd.type  ONLINE    ONLINE    linux177
ora.diskmon    ora....on.type OFFLINE   OFFLINE
ora.evmd       ora.evm.type   ONLINE    ONLINE    linux177
ora.ons        ora.ons.type   OFFLINE   OFFLINE

少一条:
ora.asm        ora.asm.type   ONLINE    ONLINE    linux177
 
执行命令报错:
grid@linux177:/opt/oracrs/product/11gR2/grid/bin> crsctl start res ora.asm
CRS-2613: Could not find resource 'ora.asm'.
CRS-4000: Command Start failed, or completed with errors.
 
但在目录$ORACLE_HOME/dbs/下,有spfile+ASM.ora
grid@linux177:/opt/oracrs/product/11gR2/grid/dbs> ll
total 20
-rw-rw---- 1 grid oinstall 1334 2013-10-25 11:30 ab_+ASM.dat
-rw-rw---- 1 grid oinstall 1544 2013-10-25 11:30 hc_+ASM.dat
-rw-r--r-- 1 grid oinstall 2851 2009-05-15 13:35 init.ora
-rw-r----- 1 grid oinstall 1536 2013-07-10 00:25 orapw+ASM
-rw-r----- 1 grid oinstall 1536 2013-10-25 11:30 spfile+ASM.ora
 
执行命令:
grid@linux177:/opt/oracrs/product/11gR2/grid/dbs> srvctl add asm  -p $ORACLE_HOME/dbs/init+ASM.ora  
grid@linux140:/opt/oracrs/product/11gR2/grid/dbs> ll
total 20
-rw-rw---- 1 grid oinstall 3291 2013-11-12 17:10 ab_+ASM.dat
-rw-rw---- 1 grid oinstall 1544 2013-11-12 17:10 hc_+ASM.dat
-rw-r--r-- 1 grid oinstall 2851 2009-05-15 13:35 init.ora
-rw-r----- 1 grid oinstall 1536 2013-07-10 00:25 orapw+ASM
-rw-r----- 1 grid oinstall 1536 2013-11-12 17:10 spfile+ASM.ora