zoukankan      html  css  js  c++  java
  • 数据库节点1存储丢失


    1.查看oracleasm日志

    sjzxdb1:/var/log # more oracleasm
    Creating /dev/oracleasm mount point: /dev/oracleasm
    Loading module "oracleasm": oracleasm
    Mounting ASMlib driver filesystem: /dev/oracleasm
    Reloading disk partitions: done
    Cleaning any stale ASM disks...
    Scanning system for ASM disks...
    Disk "DISKGROUP" does not exist or is not instantiated
    Instantiating disk "DISKGROUP"
    Disk "DISKDATA3" does not exist or is not instantiated
    Instantiating disk "DISKDATA3"
    Disk "DISKDATA2" does not exist or is not instantiated
    Instantiating disk "DISKDATA2"
    Disk "DISKDATA1" does not exist or is not instantiated
    Instantiating disk "DISKDATA1"
    Disk "DISKGROUP" is a valid ASM disk
    Disk "DISKDATA3" is a valid ASM disk
    Disk "DISKDATA2" is a valid ASM disk
    Disk "DISKDATA1" is a valid ASM disk
    Reloading disk partitions: done
    Cleaning any stale ASM disks...
    Validating disk "DISKDATA1"
    Validating disk "DISKDATA2"
    Validating disk "DISKDATA3"
    Validating disk "DISKGROUP"
    Scanning system for ASM disks...
    Disk "DISKGROUP" is a valid ASM disk
    Disk "DISKDATA3" is a valid ASM disk
    Disk "DISKDATA2" is a valid ASM disk
    Disk "DISKDATA1" is a valid ASM disk
    Disk "DISKGROUP" is a valid ASM disk
    Disk "DISKDATA3" is a valid ASM disk
    Disk "DISKDATA2" is a valid ASM disk
    Disk "DISKDATA1" is a valid ASM disk
    Creating /dev/oracleasm mount point: /dev/oracleasm
    Loading module "oracleasm": oracleasm
    Mounting ASMlib driver filesystem: /dev/oracleasm
    Reloading disk partitions: done
    Cleaning any stale ASM disks...
    Scanning system for ASM disks...
    Disk "DISKGROUP" does not exist or is not instantiated
    Instantiating disk "DISKGROUP"
    Disk "DISKDATA3" does not exist or is not instantiated
    Instantiating disk "DISKDATA3"
    Disk "DISKDATA2" does not exist or is not instantiated
    Instantiating disk "DISKDATA2"
    Disk "DISKDATA1" does not exist or is not instantiated
    Instantiating disk "DISKDATA1"
    Disk "DISKGROUP" is a valid ASM disk
    Disk "DISKDATA3" is a valid ASM disk
    Disk "DISKDATA2" is a valid ASM disk
    Disk "DISKDATA1" is a valid ASM disk
    Cleaning any stale ASM disks...
    Validating disk "DISKDATA1"
    Validating disk "DISKDATA2"
    Validating disk "DISKDATA3"
    Validating disk "DISKGROUP"
    Unmounting ASMlib driver filesystem: /dev/oracleasm
    Unloading module "oracleasm": oraclea
    oracleasm日志正常。
    2.使用oracleasm查看磁盘
    sjzxdb1:/etc/init.d # ./oracleasm listdisks
    DISKDATA1
    DISKDATA2
    DISKDATA3
    DISKGROUP
    sjzxdb1:/etc/init.d # ./oracleasm scandisks
    Scanning the system for Oracle ASMLib disks: done
    sjzxdb1:/etc/init.d #

    sjzxdb1:/etc/init.d # ./oracleasm querydisk -p -d DISKDATA1
    Disk "DISKDATA1" is a valid ASM disk on device [8, 145]
    /dev/sdj1: LABEL="DISKDATA1" TYPE="oracleasm"
    /dev/sdt1: LABEL="DISKDATA1" TYPE="oracleasm"
    asm磁盘正常,由此判断故障和磁盘无关,和asm也无关,应该是裸设备的关系,不过查看rawdevice和udev相关文件,一直找不到相关的配置文件,疑惑。。。继续查找相关配置
    3.管理员提醒操作系统是suse,是不是和操作系统的绑定裸设备有方法有关系
    oracle@sjzxdb1:/tmp> lsb_release -a
    LSB Version: core-2.0-noarch:core-3.0-noarch:core-2.0-x86_64:core-3.0-x86_64:desktop-3.1-amd64:desktop-3.1-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.1-amd64:graphics-3.1-noarch
    Distributor ID: SUSE LINUX
    Description: SUSE Linux Enterprise Server 10 (x86_64)
    Release: 10
    Codename: n/a
    oracle@sjzxdb1:/tmp>

    查找相关资料,果然不一样,suse下裸设备配置文件如下:

    sjzxdb2:/etc/udev/rules.d # vi /etc/raw
    # /etc/raw
    #
    # sample configuration to bind raw devices
    # to block devices
    #
    # The format of this file is:
    # raw<N>:<blockdev>
    #
    # example:
    # ---------
    # raw1:hdb1
    #
    # this means: bind /dev/raw/raw1 to /dev/hdb1
    #
    # ...
    raw1:sdb1
    raw2:sdc1
    raw3:sdd1
    raw4:sde1
    raw5:sdf1
    raw6:sdg1
    raw7:sdi1
    raw8:sdj1

    查看查看/dev/raw没有信息,节点2有。更加确定是裸设备绑定有问题了

    启动裸设备服务
    sjzxdb1:/dev/oracleasm/disks # rcraw start
    bind /dev/raw/raw1 to /dev/sdb1... done
    bind /dev/raw/raw2 to /dev/sdc1... done
    bind /dev/raw/raw3 to /dev/sdd1... done
    bind /dev/raw/raw4 to /dev/sde1... done
    bind /dev/raw/raw5 to /dev/sdf1... done
    bind /dev/raw/raw6 to /dev/sdg1... done
    bind /dev/raw/raw7 to /dev/sdi1... done
    bind /dev/raw/raw8 to /dev/sdj1... done
    设为自动系统
    oracle@sjzxdb1:~> chkconfig raw on
    一直没用过suse linux,以为要么用rawdevice,要么用udev,查找裸设备配置文件一直找不到,没想到真的是因为操作系统绑定裸设备的方式不一样。

  • 相关阅读:
    任务---内部揭秘
    线程
    c#制作com组件供wincc调用
    线程----计算限制的异步操作2
    随笔,聊一聊任务取消
    C#制作Wincc组件进行配方管理(二)
    MongoDB导入导出以及数据库备份111
    浏览器访问页面步骤
    C#中的继承和多态
    网关和路由器的区别
  • 原文地址:https://www.cnblogs.com/datalife/p/5147565.html
Copyright © 2011-2022 走看看