Oracle 10g RAC OCR 和 VotingDisk 的备份与恢复

Oracle RAC 中OCR 和Voting Disk 备份在我的blog: Oracle RAC 常用维护工具和命令 中已经有说明,现在再次把它单独拿出做一个说明, 因为OCR 和Voting Disk 对于RAC 系统来说太重要了。

Oracle RAC 常用维护工具和命令

http://blog.csdn.net/tianlesoftware/archive/2010/03/09/5358573.aspx

.  Voting Disk

Voting Disk 这个文件主要用于记录节点成员状态,在出现脑裂时,决定那个Partion获得控制权,其他的Partion必须从集群中剔除。Voting disk使用的是一种“多数可用算法”,如果有多个Voting  disk,,则必须一半以上的Votedisk同时使用,Clusterware才能正常使用。 比如配置了4个Votedisk,坏一个Votedisk,集群可以正常工作,如果坏了2个,则不能满足半数以上,集群会立即宕掉,所有节点立即重启,所以如果添加Votedisk,尽量不要只添加一个,而应该添加2个。这点和OCR 不一样。OCR 只需配置一个。

查看votedisk的位置:

[[email protected] ~]# crsctl query css votedisk

0.    0   /dev/raw/raw2

located 1 votedisk(s).

备份votedisk盘:

[[email protected] bin]# dd if=/dev/raw/raw2 of=/home/oracle/voting_disk.bak

294912+0 records in

294912+0 records out

恢复votedisk盘:

[[email protected] bin]# dd if=/home/oracle/voting_disk.bak of=/dev/raw/raw2

294912+0 records in

294912+0 records out

通过Strings 命令来查看 voting disk 的内容

[[email protected] oracle]# strings voting_disk.bak |sort -u

fSLC

ssLckcoT

SslcLlik

sSlcrEp0

}|{z

 .  OCR

Oracle Clusterware把整个集群的配置信息放在共享存储上,这些信息包括了集群节点的列表、集群数据库实例到节点的映射以及CRS应用程序资源信息。存放的位置就在OCR Disk上. 在整个集群中,只有一个节点能对OCR Disk 进行读写操作,这个节点叫作Master Node,所有节点都会在内存中保留一份OCR的拷贝,同时有一个OCR Process 从这个内存中读取内容。 OCR 内容发生改变时,由Master Node的OCR Process负责同步到其他节点的OCR Process。

因为OCR的内容如此重要,所以Oracle 每4个小时对其做一次备份,并且保留最后的3个备份,以及前一天,前一周的最后一个备份。 这个备份由Master Node CRSD进程完成,备份的默认位置是$CRS_HOME/crs/cdata/<cluster_name>目录下,可以通过ocrconfig -backuploc <directory_name> 命令修改到新的目录。每次备份后,备份文件名自动更改,以反应备份时间顺序,最近一次的备份叫作backup00.ocr。这些备份文件除了保存在本地,DBA还应该在其他存储设备上保留一份,以防止意外的存储故障。

[[email protected] crs]# pwd

/u01/app/oracle/product/crs/cdata/crs

[[email protected] crs]# ls -lrt

total 22632

-rw-r--r--  1 root root 4595712 Mar  9 01:03 backup02.ocr

-rw-r--r--  1 root root 4620288 Mar  9 21:20 backup01.ocr

-rw-r--r--  1 root root 4632576 Apr  8 19:46 backup00.ocr

-rw-r--r--  1 root root 4632576 Apr  8 19:46 day.ocr

-rw-r--r--  1 root root 4632576 Apr  8 19:46 week.ocr

在安装clusterware过程中,如果选择External Redundancy冗余方式,则只能输入一个OCR磁盘位置。 但是Oracle允许配置两个OCR 磁盘互为镜像,以防止OCR 磁盘的单点故障。 OCR 磁盘和Votedisk磁盘不一样,OCR磁盘最多只能有两个,一个Primary OCR 和一个Mirror OCR。

Oracle 推荐在对集群做调整时,比如增加,删除节点之前,修改RAC IP之前,对OCR做一个备份,可以使用export 备份到指定文件,如果做了replace或者restore 等操作,Oracle 建议使用 cluvfy comp ocr -n all 命令来做一次全面的检查。对OCR的备份与恢复,我们可以使用ocrconfig 命令。

[[email protected] bin]# ./ocrconfig --help

Name:

        ocrconfig - Configuration tool for Oracle Cluster Registry.

Synopsis:

        ocrconfig [option]

        option:

                -export <filename> [-s online]

                                                    - Export cluster register contents to a file

                -import <filename>                  - Import cluster registry contents from a file

                -upgrade [<user> [<group>]]

                                                    - Upgrade cluster registry from previous version

                -downgrade [-version <version string>]

                                                    - Downgrade cluster registry to the specified version

                -backuploc <dirname>                - Configure periodic backup location

                -showbackup                         - Show backup information

                -restore <filename>                 - Restore from physical backup

                -replace ocr|ocrmirror [<filename>] - Add/replace/remove a OCR device/file

                -overwrite                          - Overwrite OCR configuration on disk

                -repair ocr|ocrmirror <filename>    - Repair local OCR configuration

                -help                               - Print out this help information

Note:

        A log file will be created in

        $ORACLE_HOME/log/<hostname>/client/ocrconfig_<pid>.log. Please ensure

        you have file creation privileges in the above directory before

        running this tool.

 

1.  用导出导入备份恢复OCR

 

1) 首先关闭所有节点的CRS

[[email protected] bin]# ./crsctl stop crs

Stopping resources.

Successfully stopped CRS resources

Stopping CSSD.

Shutting down CSS daemon.

Shutdown request successfully issued.

2) 用root 用户导出OCR内容

[[email protected] bin]# ./ocrconfig -export /u01/ocr.exp

3) 重启CRS

[[email protected] bin]# ./crsctl start crs

Attempting to start CRS stack

The CRS stack will be started shortly

4) 检查CRS 状态

[[email protected] bin]# ./crsctl check crs

CSS appears healthy

CRS appears healthy

EVM appears healthy

5)破坏OCR内容

[[email protected] bin]# dd if=/dev/zero of=/dev/raw/raw1 bs=1024 count=102400

102400+0 records in

102400+0 records out

6) 检查OCR一致性

[[email protected] bin]# ./ocrcheck

PROT-601: Failed to initialize ocrcheck

7)使用cluvfy 工具检查一致性

[[email protected] cluvfy]# ./runcluvfy.sh comp ocr -n all

Verifying OCR integrity

Unable to retrieve nodelist from Oracle clusterware.

Verification cannot proceed.

8) 使用Import 恢复OCR 内容

[[email protected] bin]# ./ocrconfig -import /u01/ocr.exp

注意:  使用restore选项只能导入OCR自动产生的物理备份,

import选项只能导入通过export选项导出的的逻辑备份。

9)再次检查OCR

[[email protected] bin]# ./ocrcheck

Status of Oracle Cluster Registry is as follows :

Version               :          2

Total space (kbytes)     :     147352

Used space (kbytes)    :       4364

Available space (kbytes) :     142988

ID                    :  610419116

Device/File Name        : /dev/raw/raw1

Device/File integrity check succeeded

Device/File not configured

Cluster registry integrity check succeeded

10) 使用cluvfy工具检查

[[email protected] cluvfy]# ./runcluvfy.sh comp ocr -n all

2. 自动备份恢复OCR

(1)关闭运行在集群数据库的所有节点上的CRS服务程序

/etc/init.d/init.crs stop

在Oracle 11gR2 中已经没有了init.crs 命令了。 只能通过

#crsctl stop crs

命令来关闭CRS.

(2). 通过ocrconfig 的showbackup选项查看最近的备份

[[email protected] ~]# ocrconfig -showbackup

racnode1     2010/11/22 13:30:27     /u01/app/11.2.0/grid/cdata/racnode-cluster/backup00.ocr

racnode1     2010/11/22 09:30:27     /u01/app/11.2.0/grid/cdata/racnode-cluster/backup01.ocr

racnode1     2010/11/22 05:30:26     /u01/app/11.2.0/grid/cdata/racnode-cluster/backup02.ocr

racnode1     2010/11/21 05:30:23     /u01/app/11.2.0/grid/cdata/racnode-cluster/day.ocr

racnode1     2010/11/11 03:35:10     /u01/app/11.2.0/grid/cdata/racnode-cluster/week.ocr

(3)通过ocrconfig的restore或import选项导入OCR数据

ocrconfig  -restore  filename_location

如:

ocrconfig  -restore  /u01/app/11.2.0/grid/cdata/racnode-cluster/backup00.ocr

注意:  使用restore选项只能导入OCR自动产生的物理备份,

import选项只能导入通过export选项导出的的逻辑备份。

(4) 检查CRS

[[email protected] bin]# ./ocrcheck

使用cluvfy工具检查

[[email protected] cluvfy]# ./runcluvfy.sh comp ocr -n all

(5)在所有节点上重新启动CRS

/etc/init.d/init.crs   start

在Oracle 11gR2使用:#crsctl start crs 命令来启动CRS.

小结:

这里只提到了OCR 和Voting Disk 的备份。 实际上,对于一个数据库环境来说,要备份的东西还有很多。  只不过OCR这东西涉及RAC 底层的东西,所以在做涉及OCR的变更之前要非常小心。  做操作之前,最好是手工的用ocrconfig -export 把OCR 备份一下。

对于一个数据库环境,还需要的备份的东西如:spfile,control file,数据文件位置等。 数据文件位置,可用如下命令查看:

elect file_name,tablespace_name from dba_data_files;

select file_name,tablespace_name from dba_temp_files;

有时候在恢复的时候需要这些信息。 我们尽量备份多一点,这样对恢复就越有利。

以前对DBA的认识:

1. 胆大心细,遇事不慌

2. 制定完善的备份策略,做相关操作之前,也是需要备份。

3. 做变更之前,要先整理出文档,按照文档操作。 在好的记忆和经验也难免有遗漏的时候,照文档来,一步一步操作。

那天和群里 布豆 讨论的时候,他说了一条:

风险大的事情不做,变个思路将风险降低到最低点再操作!

转:http://blog.csdn.net/tianlesoftware/article/details/5467273

时间: 2024-10-12 21:47:00

Oracle 10g RAC OCR 和 VotingDisk 的备份与恢复的相关文章

Oracle 10g RAC OCR、Voting disk更换

环境:OEL 5.7 + Oracle 10.2.0.5 RAC 需求:更换存储,OCR.Voting disk同时需要更换到新存储. 1.替换OCR 2.替换voting disk 1.替换OCR 替换OCR(Oracle Cluster Registry)首先需要关闭RAC所有节点的crs,然后导出当前的ocr配置文件,手工修改ocr.loc文件后,导入ocr配置文件,可选择性创建ocrmirror. 本次实验演示就是将原来的/dev/raw/raw1替换为/dev/raw/raw14,并创

RedHat EL5 安装Oracle 10g RAC之--系统环境配置(1)

RedHat EL5 安装Oracle 10g RAC之--系统环境配置(1) 系统环境: 操作系统:RedHat EL5 Cluster: Oracle CRS 10.2.0.1.0 Oracle:  Oracle 10.2.0.1.0 如图所示:RAC 系统架构 一.操作系统环境 1.网络配置(在所有节点) [[email protected] ~]# cat /etc/hosts # Do not remove the following line, or various programs

ORACLE 10G RAC 节点自动重启故障处理

将数据库集群升级到10.2.0.5之后,双节点服务器不断重启,查询oracle oprocd进程日志,信息如下: Jul 03 08:16:34.702 | INF | monitoring started with timeout(1000), margin(500), skewTimeout(125) Jul 03 08:16:34.704 | INF | fatal mode startup, setting process to fatal mode 可以看到看到oprocd进程的时间间

Oracle 10g RAC启动与关闭命令

一. 检查共享设备 一般情况下, 存放OCR 和 Voting Disk 的OCFS2 或者raw 都是自动启动的. 如果他们没有启动,RAC 肯定是启动不了的. 1.1 如果使用ocfs2的,检查ocfs2 状态 /etc/init.d/o2cb status 在挂载之前,/etc/init.d/o2cb status 显示为Checking O2CB heartbeat: Not active. 在格式化和挂载文件系统之前,应验证 O2CB 在两个节点上均联机:O2CB 心跳当前没有 活动,

oracle 10g rac 修改public ip、vip和private ip

oracle 10g rac 修改public ip.vip和private ip [TOC] 1.IP地址规划 Hostname 当前IP 修改后IP Public IP node1 192.168.56.20 192.168.100.20 Public IP node2 192.168.56.21 192.168.100.21 VIP node1-vip 192.168.56.98 192.168.100.98 VIP node2-vip 192.168.56.99 192.168.100.

Solaris 10(x86)构建Oracle 10g RAC之--配置系统环境(1)

系统环境: 操作系统:Solaris 10(x86-64) Cluster: Oracle CRS 10.2.0.1.0 Oracle:  Oracle 10.2.0.1.0 如图所示:RAC 系统架构 一.操作系统环境 1.网络配置(在所有节点) [[email protected]:/]# cat /etc/inet/ipnodes  # # Internet host table # ::1     localhost        127.0.0.1       localhost   

Oracle 10g RAC 升级(CPU Update)之--升级CRS

Oracle 10g RAC 升级(CPU Update)之--升级CRS 系统环境: 操作系统:RedHat EL5 Cluster: Oracle CRS 10.2.0.1.0 Oracle:  Oracle 10.2.0.1.0 如图所示:RAC 系统架构 案例: 本案例是从 Oracle 10.2.0.1.0 升级到10.2.0.4.0,作为Oracle的补丁升级(CPU Update). 升级步骤:   1.CRS 升级(对于CRS 升级可以采用滚动升级,本案例采用了滚动升级)   2

【转】Oracle 10g RAC TAF

本人转自:http://www.cnblogs.com/future2012lg/archive/2013/10/12/3365978.html Oracle RAC 同一时候具备HA(High Availiablity) 和LB(LoadBalance). 而其高可用性的基础就是Failover(故障转移). 它指集群中不论什么一个节点 的故障都不会影响用户的使用,连接到故障节点的用户会被自己主动转移到健康节点,从用户感受而言, 是感觉不到这样的切换. Oracle 10g RAC 的Fail

Oracle 10g下ocr和votedisk的管理

ocr和votedisk是什么? 作为集群,oracle cluster需要共享存储来存放整个集群的配置信息,ocr便是用例存放这些配置信息的地方,ocr的存储容量一般不会太大,在10g下,oracle建议256M已经足以.ocr必须需要存储在集群文件系统或者裸设备上,出于性能上的考虑,本人建议将ocr建立在裸设备上,性能高并且管理也不复杂(ocr和votedisk的数量一般不会太多).ocr中存放的是集群的配置信息,这些信息只能在一个节点上进行维护操作,这一节点叫做Master Node,其他