Chinaunix首页 | 论坛 | 博客
  • 博客访问: 770191
  • 博文数量: 185
  • 博客积分: 7434
  • 博客等级: 少将
  • 技术积分: 2325
  • 用 户 组: 普通用户
  • 注册时间: 2005-12-29 14:01
文章分类

全部博文(185)

文章存档

2013年(1)

2012年(2)

2011年(17)

2010年(25)

2009年(36)

2008年(104)

分类: Oracle

2010-07-28 11:17:52

碰到ORA-29701,11gR2启动ASM实例失败
   原文连接:http://tomszrp.itpub.net/post/11835/493005
   [grid@vm11gr2] /home/grid> sqlplus "/as sysasm"
   SQL*Plus: Release 11.2.0.1.0 Production on Sun Oct 25 10:16:21 2009
   Copyright (c) 1982, 2009, Oracle. All rights reserved.
   Connected to an idle instance.
   SQL> startup
   ORA-01078: failure in processing system parameters
   ORA-29701: unable to connect to Cluster Synchronization Service
   SQL>
   无法连接到CSS服务上.到操作系统上检查一下看看
   [grid@vm11gr2] /home/grid> crsctl check css
   CRS-4530: Communications failure contacting Cluster Synchronization Services daemon
   [grid@vm11gr2] /home/grid>
   [grid@vm11gr2] /home/grid> ps -ef|grep cssd
   果然没有CSS的服务daemon进程,再看一下HAS(High Availability Service)的状态
   [grid@vm11gr2] /home/grid> crsctl check has
   CRS-4638: Oracle High Availability Services is online
   [grid@vm11gr2] /home/grid> ps -ef|grep d.bin
   grid 5886 1 0 10:06 ? 00:00:01 /u01/app/grid/product/11.2/grid/bin/ohasd.bin reboot
   [grid@vm11gr2] /home/grid>
   发现HAS的服务确实启动了的,而ora.cssd和ora.diskmon这2个服务是依赖于HAS维护的.
  
   进一步查看各资源的状态
   [grid@vm11gr2] /home/grid> crs_stat -t
   Name                Type                 Target    State Host
   --------------------------------------------------------------
   ora.FLASH_DATA.dg   ora.diskgroup.type   OFFLINE OFFLINE vm11gr2
   ora.SYS_DATA.dg     ora.diskgroup.type   OFFLINE OFFLINE vm11gr2
   ora.asm             ora.asm.type         OFFLINE OFFLINE vm11gr2
   ora.cssd            ora.cssd.type        OFFLINE OFFLINE vm11gr2
   ora.diskmon         ora.diskmon.type     OFFLINE OFFLINE vm11gr2
   [grid@vm11gr2] /home/grid>
  
   [grid@vm11gr2] /home/grid> crsctl status resource -t
   --------------------------------------------------------------------------------
   NAME               TARGET          STATE        SERVER     STATE_      DETAILS
   --------------------------------------------------------------------------------
   Local Resources
   --------------------------------------------------------------------------------
   ora.FLASH_DATA.dg
                     OFFLINE          OFFLINE     vm11gr2
   ora.SYS_DATA.dg   
                     OFFLINE          OFFLINE     vm11gr2
   ora.asm           
                     OFFLINE          OFFLINE     vm11gr2
   --------------------------------------------------------------------------------
   Cluster Resources
   --------------------------------------------------------------------------------
   ora.cssd         
           1         OFFLINE          OFFLINE
   ora.diskmon      
           1         OFFLINE          OFFLINE
   再看一下ora.cssd和ora.diskmon的属性
   [grid@vm11gr2] /home/grid> crs_stat -p ora.cssd
   NAME=ora.cssd
   TYPE=ora.cssd.type
   ACTION_SCRIPT=
   ACTIVE_PLACEMENT=0
   AUTO_START=never
   CHECK_INTERVAL=30
   DESCRIPTION="Resource type for CSSD"
   FAILOVER_DELAY=0
   FAILURE_INTERVAL=3
   FAILURE_THRESHOLD=5
   HOSTING_MEMBERS=
   PLACEMENT=balanced
   RESTART_ATTEMPTS=5
   SCRIPT_TIMEOUT=600
   START_TIMEOUT=600
   STOP_TIMEOUT=900
   UPTIME_THRESHOLD=1m
   [grid@vm11gr2] /home/grid> crs_stat -p ora.diskmon
   NAME=ora.diskmon
   TYPE=ora.diskmon.type
   ACTION_SCRIPT=
   ACTIVE_PLACEMENT=0
   AUTO_START=never
   CHECK_INTERVAL=20
   DESCRIPTION="Resource type for Diskmon"
   FAILOVER_DELAY=0
   FAILURE_INTERVAL=3
   FAILURE_THRESHOLD=5
   HOSTING_MEMBERS=
   PLACEMENT=balanced
   RESTART_ATTEMPTS=10
   SCRIPT_TIMEOUT=60
   START_TIMEOUT=60
   STOP_TIMEOUT=60
   UPTIME_THRESHOLD=5s
   [grid@vm11gr2] /home/grid>
   到这里基本就找到了原因了,可以看到这两个资源的AUTO_START属性默认都设置为never,也就是说他们不会随着HAS服务的启动而自动启动的, 尽管默认情况下HAS服务是开机自动启动的.好了,那我们就手动启动一下吧:
   [grid@vm11gr2] /home/grid> crsctl start resource ora.cssd
   CRS-2672: Attempting to start 'ora.cssd' on 'vm11gr2'
   CRS-2679: Attempting to clean 'ora.diskmon' on 'vm11gr2'
   CRS-2681: Clean of 'ora.diskmon' on 'vm11gr2' succeeded
   CRS-2672: Attempting to start 'ora.diskmon' on 'vm11gr2'
   CRS-2676: Start of 'ora.diskmon' on 'vm11gr2' succeeded
   CRS-2676: Start of 'ora.cssd' on 'vm11gr2' succeeded
   [grid@vm11gr2] /home/grid>
   注:ora.cssd 和ora.diskmon这两个服务是有依赖关系的,启动哪个都会把两个都起来.
   [grid@vm11gr2] /home/grid> crs_stat -t
   Name                Type                 Target    State Host
   --------------------------------------------------------------
   ora.FLASH_DATA.dg   ora.diskgroup.type   OFFLINE OFFLINE vm11gr2
   ora.SYS_DATA.dg     ora.diskgroup.type   OFFLINE OFFLINE vm11gr2
   ora.asm             ora.asm.type         OFFLINE OFFLINE vm11gr2
   ora.cssd            ora.cssd.type        ONLINE  ONLINE  vm11gr2
   ora.diskmon         ora.diskmon.type     ONLINE  ONLINE  vm11gr2
   [grid@vm11gr2] /home/grid>
   CSS服务起来了,重启动asm instance   
   [grid@vm11gr2] /home/grid> sqlplus "/as sysasm"
   SQL*Plus: Release 11.2.0.1.0 Production on Sun Oct 25 10:30:03 2009
   Copyright (c) 1982, 2009, Oracle. All rights reserved.
   Connected to an idle instance.
   SQL> startup
   ASM instance started
   Total System Global Area 284565504 bytes
   Fixed Size 1336036 bytes
   Variable Size 258063644 bytes
   ASM Cache 25165824 bytes
   ASM diskgroups mounted
   SQL> exit
   Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
   With the Automatic Storage Management option
   [grid@vm11gr2] /home/grid> crs_stat -t
   Name                Type                 Target    State Host
   --------------------------------------------------------------
   ora.FLASH_DATA.dg   ora.diskgroup.type   ONLINE  ONLINE  vm11gr2
   ora.SYS_DATA.dg     ora.diskgroup.type   ONLINE  ONLINE  vm11gr2
   ora.asm             ora.asm.type         ONLINE  ONLINE  vm11gr2
   ora.cssd            ora.cssd.type        ONLINE  ONLINE  vm11gr2
   ora.diskmon         ora.diskmon.type     ONLINE  ONLINE  vm11gr2
   [grid@vm11gr2] /home/grid>
   tips
     1)默认情况下HAS(High Availability Service)是自动启动的.通过如下命令可以取消和启用自动启动
       crsctl disable has
       crsctl enable has
     2)HAS手动启动和停止
       crsctl start has
       crsctl stop has
     3)查看HAS的状态
       crsctl check has
     4)如果想让ora.css和ora.diskmon服务随着HAS的启动而自动启动,那么你可以这两个服务的AUTO_START属性
       crsctl modify resource "ora.cssd" -attr "AUTO_START=1"
       or
       crsctl modify resource "ora.diskmon" -attr "AUTO_START=1"
     5)如果想取消ora.css和ora.diskmon的Auto start
       crsctl modify resource "ora.cssd" -attr "AUTO_START=never"
       crsctl modify resource "ora.diskmon" -attr "AUTO_START=never"
阅读(1187) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~