oracle rac关闭死机问题

发布时间:  2014-11-29 浏览次数:  504 下载次数:  0
问题描述
CC组网的数据库使用oracle 11g rac。rac的两个节点服务器使用e6000的两个刀片,采用直连心跳。
组网如图:

数据库版本:
SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
PL/SQL Release 11.1.0.7.0 - Production
CORE    11.1.0.7.0      Production
TNS for Linux: Version 11.1.0.7.0 - Production
NLSRTL Version 11.1.0.7.0 - Production

告警信息

1、首先进入oracle用户,使用shutdown immediate关闭DB2的实例。出现:
      SQL> the database disamounted 。
然后一直管不了了,卡在这里。
2、进入DB1查询资源crs_stat -t显示:
     ora....c1.inst application    ONLINE    ONLINE    dbfs1      
     ora....c2.inst application    ONLINE    OFFLINE    dbfs2
说明了实例2已经关闭了。
3、查询DB2 的oracle用户的进程,显示:
oracle    7735     1  0 Nov28 ?        00:00:00 oracleipcc2 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle    9233  9207  0 Nov23 ?        00:01:04 /opt/oracrs/bin/oclsomon.bin
root      9302     1  0 Nov23 ?        00:00:00 /opt/oracrs/bin/oclskd.bin
oracle    9335  8218  0 Nov23 ?        00:00:03 /opt/oracrs/bin/evmlogger.bin -o /opt/oracrs/evm/log/evmlogger.info -l /opt/oracrs/evm/log/evmlogger.log
说明oracle的实例并没有完全的关闭,还有很多进程残留。
oracle    9501     1  0 Nov23 ?        00:01:32 asm_pmon_+ASM2
oracle    9503     1  0 Nov23 ?        00:02:36 asm_vktm_+ASM2
oracle    9507     1  0 Nov23 ?        00:02:11 asm_diag_+ASM2
oracle    9509     1  0 Nov23 ?        00:00:23 asm_ping_+ASM2
oracle    9511     1  0 Nov23 ?        00:00:08 asm_psp0_+ASM2
oracle    9513     1  0 Nov23 ?        00:10:56 asm_dia0_+ASM2
 

处理过程

1、首先查看告警日志alertipcc2.log,显示:
Stopping background process VKTM:
Sun Nov 23 00:33:18 2014
SHUTDOWN: waiting for detached processes 'DIA0' to terminate.—说明IDA0进程一直关不掉,卡在这里,然后直接kill掉这个oracle的DIA0进程,关闭过程还是卡在那里。
Sun Nov 23 01:03:16 2014
2、手动kill掉DIA0 进程系统号,然后告警日志刷新:
Sun Nov 23 01:03:16 2014
freeing rdom 0—kill之后新出现这行日志,又半小时还是关不掉数据库,
3、手动关闭CRS进程,crsctl stop crs,然后DB1 检测资源DB2 完全offline。
然后手动关闭数据库,重启db2系统。查询资源db2的crs和实例全部资源和进程启动正常。日志展示:
Starting ORACLE instance (normal)正常启动。
4、再次shutdown immediate实例2,系统正常关闭实例,没有卡在那里。
查询告警日志:
Sun Nov 23 01:27:01 2014
Stopping background process SMCO
Stopping background process FBDA
Shutting down instance: further logons disabled
Stopping background process QMNC
Stopping background process MMNL
Stopping background process MMON
Shutting down instance (immediate)--显示正常关闭
License high water mark = 65ALTER DATABASE CLOSE NORMAL

 

根因
由于DIA0 进程异常卡死,导致实例的日志读写进程不能正常关闭,因此实例始终关闭不掉。
解决方案
使用操作系统自动释放资源的形式来关闭数据库实例。不到万不得已不要执行shutdown abort来关闭数据库,这样会
导致数据产生不一致,实例启动需要实例恢复。由于无归档日志,会使恢复数据库异常复杂。

END