当前位置:  数据库>oracle

Oracle RAC 之表决磁盘(votedisk)

    来源: 互联网  发布时间:2017-06-02

    本文导语: 今天是2014-03-26,因分析deadlock耽误了写RAC的东西,今天再来写篇RAC中表决磁盘的管理日志。特此记录一下。 表决磁盘(votedisk)是为因网络导致脑裂的情况而创建的。表决磁盘在11G存储在ASM中,且如果放入ASM将有几点要求。 第...

今天是2014-03-26,因分析deadlock耽误了写RAC的东西,今天再来写篇RAC中表决磁盘的管理日志。特此记录一下。
 表决磁盘(votedisk)是为因网络导致脑裂的情况而创建的。表决磁盘在11G存储在ASM中,且如果放入ASM将有几点要求。
 第一:表决磁盘文件必须全部放入ASM中;
 第二:表决磁盘存在asm中的个数不能删除和添加,而是通过asm的normal,high、external冗余级别决定的。
 如:在normal中必须有3个故障组存在3个votedisk,在high中必须要有5个故障组存在5个votedisk,那么在external只有1个votedisk
 第三:表决磁盘文件在11G不在支持dd命令对其的备份和还原,而是支持crsctl相关命令
 第四:表决磁盘文件的个数要是奇数,便于投票选举,且表决磁盘文件的个数最多为15个,但一般没必要超过5个。
 介绍一下对于网络导致脑裂中表决磁盘的选举过程。
 假如我有三个RAC实例节点分别是A,B,C那么当A节点宕机了,那么在11G中通过先尝试停止响应的资源,进而剔除该节点,那么为什么会剔除该节点呢?那是因为当发生脑裂的时候
 当发生脑裂的时候被分割成两部分,A 为一部分投票为1,BC为一部分投票为2,那么更具选举会选择票数多的那方,从而剔除A;刚刚这是三个节点的例子
 那么对于两个实例组成的RAC怎么处理呢?那么这个时候表决磁盘就起到一定的作用了,当脑裂发生了,那么每一方都持一票,谁也不能剔除谁?这可怎么办呢?那么Oracle会选择
 存留首先获得表决磁盘文件多的那方,将组成一个集群从而剔除另一方。通常我们所说的磁盘心跳就是通过共享磁盘中的表决磁盘来检测的。
 eg:
 [grid@rac-one peer]$ crsctl get css disktimeout
 CRS-4678: Successful get disktimeout 200 for Cluster Synchronization Services.
 [grid@rac-one peer]$
通过ocssd进程来管理
 如何移动表决磁盘文件到另一asm磁盘组呢?
 eg:
 [grid@rac-two ~]$ sqlplus / as sysasm
 
SQL*Plus: Release 11.2.0.4.0 Production on Tue Mar 25 23:31:24 2014
 
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
 

Connected to:
 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
 With the Real Application Clusters and Automatic Storage Management options
 
SQL> col name for a20
 SQL> col path for a40
 SQL> set linesize 200
 SQL> select a.name,b.name,b.path,b.voting_file from v$asm_disk b,v$asm_diskgroup a where a.group_number=b.group_number;
 
NAME                NAME                PATH                                    V
 -------------------- -------------------- ---------------------------------------- -
 DATADG              DATADG_0000          /dev/asm-diskg                          N
 TESTDG              TESTDG_0004          /dev/asm-diskh                          N
 TESTDG              TESTDG_0000          /dev/asm-diski                          N
 TESTDG              TESTDG_0001          /dev/asm-diskj                          N
 TESTDG              TESTDG_0003          /dev/asm-diskf                          N
 GIDG                GIDG_0001            /dev/asm-diskc                          Y
 TESTDG              TESTDG_0002          /dev/asm-diskk                          N
 GIDG                GIDG_0000            /dev/asm-diskd                          Y
 GIDG                GIDG_0002            /dev/asm-diske                          Y
 DATADG              DATADG_0001          /dev/asm-diskb                          N
 
10 rows selected.
 
SQL> exit
 另外还可以使用crsctl query css votedisk 获得信息
 [grid@rac-two ~]$ crsctl query css votedisk
 ##  STATE    File Universal Id                File Name Disk group
 --  -----    -----------------                --------- ---------
  1. ONLINE  3da4160ba0334f66bf4b2e6e9b38cceb (/dev/asm-diskd) [GIDG]
  2. ONLINE  2797b9ed25e84f34bf8fa5948c8fedb6 (/dev/asm-diske) [GIDG]
  3. ONLINE  69ade332aa214f3abfd8b77a410019b0 (/dev/asm-diskc) [GIDG]
 Located 3 voting disk(s).
 当votedisk属于asm组从而移动votedisk的时候将不能使用crsctl add css votedisk命令,否则会报错。但是如果原先votedisk属于集群文件系统文件,那么可以使用该命令进而replace
 完成操作。
 [grid@rac-two ~]$ crsctl add css votedisk +testdg
 CRS-4671: This command is not supported for ASM diskgroups.
 CRS-4000: Command Add failed, or completed with errors.
 将votedisk从磁盘组GIDG 移动到TESTDG
 [grid@rac-two ~]$ crsctl replace votedisk +TESTDG
 Successful addition of voting disk 98f8244772c74fc0bf8c5ddc699775f1.
 Successful addition of voting disk aa123f79eef94f9ebf12ed0953a3caa6.
 Successful addition of voting disk 42e16333baa44f78bf00840265bff13d.
 Successful deletion of voting disk 3da4160ba0334f66bf4b2e6e9b38cceb.
 Successful deletion of voting disk 2797b9ed25e84f34bf8fa5948c8fedb6.
 Successful deletion of voting disk 69ade332aa214f3abfd8b77a410019b0.
 Successfully replaced voting disk group with +TESTDG.
 CRS-4266: Voting file(s) successfully replaced
 [grid@rac-two ~]$ crsctl query css votedisk
 ##  STATE    File Universal Id                File Name Disk group
 --  -----    -----------------                --------- ---------
  1. ONLINE  98f8244772c74fc0bf8c5ddc699775f1 (/dev/asm-diski) [TESTDG]
  2. ONLINE  aa123f79eef94f9ebf12ed0953a3caa6 (/dev/asm-diskk) [TESTDG]
  3. ONLINE  42e16333baa44f78bf00840265bff13d (/dev/asm-diskf) [TESTDG]
 Located 3 voting disk(s).
 [grid@rac-two ~]$ 
备份表决磁盘文件。
 刚刚介绍了无需备份
 如果磁盘文件损坏了那么如何修复呢?
 首先要独占模式启动crs资源
 crsctl start crs -excl
 如果是存在asm中,使用crsctl replace votedisk +diskgroup
 完成修复
 如果是存在集群文件系统,那么需要查看votedisk信息,crsctl query css votedisk然后删除原先的失效的votedisk,进而在添加votedisk
 命令为:crsctl add css votedisk ‘path',
 然后再使用root停止crs,crsctl stop crs
 然后再使用root启动crs ,crsctl start crs


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle 12c发布简单介绍及官方下载地址
  • Oracle 12c的九大最新技术特性介绍 iis7站长之家
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • Oracle 数据库(oracle Database)性能调优技术详解
  • Linux /$ORACLE_HOME $ORACLE_HOME
  • ORACLE日期相关操作
  • Linux系统下Oracle的启动与Oracle监听的启动
  • ORACLE数据库常用字段数据类型介绍
  • 请问在solaris下安装ORACLE,用root用户和用oracle用户安装有什么区别么?
  • Oracle 12c的九大最新技术特性介绍
  • 网间Oracle的连接,远程连接Oracle服务器??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,