两台服务器配置ORACLE 11G RAC,主要配置如下:
OS: Oracle Linux Server 6.3
Grid: Oracle 11G R2 Grid 64Bit
Oracle:Oracle 11G R2 11.2.0.1.0
存储:ISCSI,创建3个LUN,CRSVOL、DATAVOL、FRAVOL,分别用作磁盘仲裁\OCR注册、数据库文件、
数据库归档。
上次因为调整存储后,服务器无法访问FRAVOL LUN,造成Oracle数据库无法启动,经修改数据库参
数文件,将数据库文件及归档整合到DATAVOL,已经可以启用两个数据库,但是启用后无法自动启
用数据库,应该是系统中还存FRAVOL磁盘组信息,CRS无法挂载这个磁盘组造成,现在想把它彻底
清掉,请问高人应该怎么做,谢谢。系统启动后,查看CRS资源如下:--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       racnode1                                     
ora.oc4j
      1        OFFLINE OFFLINE                                                   
ora.racdb.db
      1        ONLINE  OFFLINE                                                   
      2        ONLINE  OFFLINE                                                   
ora.racdb.racdbsvc.svc
      1        ONLINE  UNKNOWN      racnode2                 CHECK TIMED OUT     
      2        ONLINE  UNKNOWN      racnode1                 CHECK TIMED OUT     
ora.racnode1.vip
      1        ONLINE  OFFLINE                                                   
ora.racnode2.vip
      1        ONLINE  ONLINE       racnode2                                     
ora.scan1.vip
      1        ONLINE  ONLINE       racnode1  手动启动svc资料,显示如下错误(只截取了错误信息):
[grid@racnode1 ~]$ crs_start ora.racdb.racdbsvc.svcAttempting to start `ora.FRAVOL.dg` on member `racnode2`
ORA-15032: not all alterations performed
ORA-15017: diskgroup "FRAVOL" cannot be mounted
ORA-15063: ASM discovered an insufficient number of disks for diskgroup "FRAVOL"Start of `ora.FRAVOL.dg` on member `racnode2` failed.CRS-0215: Could not start resource 'ora.racdb.racdbsvc.svc 2 1'.查询视图v$asm_diskgroup,也没有发现这个磁盘组,
SQL> select Group_number,name,state from v$asm_diskgroup;GROUP_NUMBER NAME                           STATE
------------ ------------------------------ -----------
           1 CRSDG                          QUIESCING
           2 DATAVOL                        MOUNTED
手动删除
SQL> drop diskgroup FRAVOL including contents;
drop diskgroup FRAVOL including contents
*
ERROR at line 1:
ORA-15039: diskgroup not dropped
ORA-15001: diskgroup "FRAVOL" does not exist or is not mounted

解决方案 »

  1.   

    另外强制删除,报如下错误:
    SQL> drop diskgroup FRAVOL force including contents;
    drop diskgroup FRAVOL force including contents
    *
    ERROR at line 1:
    ORA-15039: diskgroup not dropped
    ORA-15063: ASM discovered an insufficient number of disks for diskgroup
    "FRAVOL"
      

  2.   

    顺便说一下,之前在创建ASM磁盘时,为了防止系统重启时分配置ISCSI LUN的磁盘变,通过UDEV绑定[root@racnode1 disks]# cd /dev/oracleasm/disks/
    [root@racnode1 disks]# ls
    CRSVOL  DATAVOL
    没有找到FRAVOL.
      

  3.   

    [root@racnode1 disks]# cd /dev/oracleasm/disks/
    [root@racnode1 disks]# ls
    CRSVOL  DATAVOL
    没有找到FRAVOL.物理磁盘,asmlib中也可以找到的
    /etc/init.d/oracleasm querydisk -p VOL1 类似这样的命令如果没有了asm信息,那就要靠自己去想怎么配置的,一个个去排除,甚至可以通过kfed 来找出来
      

  4.   

    [root@racnode1 disks]# cd /dev/oracleasm/disks/
    [root@racnode1 disks]# ls
    CRSVOL  DATAVOL
    没有找到FRAVOL.物理磁盘,asmlib中也可以找到的
    /etc/init.d/oracleasm querydisk -p VOL1 类似这样的命令如果没有了asm信息,那就要靠自己去想怎么配置的,一个个去排除,甚至可以通过kfed 来找出来谢谢你的回复,可以确定系统上应该已经没有这个磁盘的信息了,应该是还是在OCR上有残留信息,我在ASM参数文件上查到了一个,但是改了这后还是有。[root@racnode1 ~]# oracleasm querydisk -p CRSVOL
    Disk "CRSVOL" is a valid ASM disk
    /dev/asm-crs1: LABEL="CRSVOL" TYPE="oracleasm" 
    [root@racnode1 ~]# oracleasm querydisk -p FRAVOL
    Disk "FRAVOL" does not exist or is not instantiatedASM参数文件上清除
    SQL> show parameter asm_NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    asm_diskgroups                       string      FRAVOL, DATAVOL
    asm_diskstring                       string      /dev/oracleasm/disks/*
    asm_power_limit                      integer     1
    asm_preferred_read_failure_groups    string
    SQL> create pfile='/home/grid/pfileasm.ora' from spfile;File created.SQL> create spfile='+DATAVOL' from pfile='/home/grid/pfileasm.ora';File created.
    重启后
    SQL> show parameter asm_NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    asm_diskgroups                       string      DATAVOL
    asm_diskstring                       string      /dev/oracleasm/disks/*
    asm_power_limit                      integer     1
    asm_preferred_read_failure_groups    string重启后alert_asm.log错误记录ERROR: diskgroup FRAVOL was not mounted
    NOTE: cache deleting context for group FRAVOL 3/-920104790
    ORA-15032: not all alterations performed
    ORA-15017: diskgroup "FRAVOL" cannot be mounted
    ORA-15063: ASM discovered an insufficient number of disks for diskgroup "FRAVOL"
    ERROR: ALTER DISKGROUP FRAVOL MOUNT  /* asm agent */
    Fri May 03 18:51:05 2013