赞
踩
数据库实例启动时报错:
SQL> startup
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '+DATA/orcl/spfileorcl.ora'
ORA-17503: ksfdopn:2 Failed to open file +DATA/orcl/spfileorcl.ora
ORA-12547: TNS:lost contact
刚开始以为ASM磁盘损坏,但是检查asm实例状态及里面的相关文件都正常,上网Google后找到如下解决办法,供参考:
Applies to:
Oracle Server - Enterprise Edition - Version: 11.2.0.2 and later [Release: 11.2 and later ]
Information in this document applies to any platform.
Symptoms
1. When attempting to startup database,the following error occurs.
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '+DATA1/orcl/spfileorcl.ora'
ORA-17503: ksfdopn:2 Failed to open file +DATA1/orcl/spfileorcl.ora
ORA-12547: TNS:lost contact
2. DB alert log:
ERROR: Failed to connect with connect string: (DESCRIPTION=(ADDRESS=(PROTOCOL=beq)(PROGRAM=/opt/11.2.0/grid/bin/oracle)(ARGV0=oracle+ASM_pmon_orcl)(ENVS='ORACLE_HOME=/opt/11.2.0/grid,ORACLE_SID=+ASM')(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))'))(enable=setuser))
WARNING: ASM communication error: op 0 state 0x0 (15055)
ERROR: direct connection failure with ASM
NOTE: Deferred communication with ASM instance
Errors in file /opt/oracle/diag/rdbms/orcl/orcl/trace/orcl_pmon_26924.trc:
ORA-15055: unable to connect to ASM instance
ORA-12547: TNS:lost contact
3. ASM instance and required diskgroups are online and no error in ASM alert:
crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS Local Resources
--------------------------------------------------------------------------------
ora.DATA1.dg ONLINE ONLINE prod
ora.DATA2.dg ONLINE ONLINE prod
ora.asm ONLINE ONLINE prod Started
Cause
The issue is caused by incorrect permission of $GRID_HOME/bin/oracle and $ORACLE_HOME/bin/oracle, which lead to connection failure to ASM instance:
ls -al $GRID_HOME/bin/oracle
-rwxr-x--x 1 grid oinstall 200678464 Feb 28 14:54 oracle
ls -al $ORACLE_HOME/bin/oracle
-rwxr-x--x 1 oracle asmadmin 228886191 Feb 28 15:41 oracle
Solution
Oracle binary should have permission of 6751. To correct the permission, as owner of oracle binary:
cd $GRID_HOME/bin
chmod 6751 oracle
cd $ORACLE_HOME/bin
chmod 6751 oracle
After the change, permission should show:
ls -l oracle
-rwsr-s--x 1 grid oinstall 152400480 Nov 24 15:49 oracle
Once the permission is fixed, if database still fails to come up, restart Grid Infrastructure.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12725924/viewspace-768204/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/12725924/viewspace-768204/
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。