ORA-29701: unable to connect to Cluster Synchronization Service

[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”

点赞