RAC備份恢復之Voting備份與恢復

space6212發表於2019-05-21
voting disk儲存RAC中各個節點成員的資訊,它是RAC中很重要的一個組成部分。為了提高安全性,除了mirror外,也要做好定期備份。

1、什麼時候需要備份voting disk
一般來說,voting disk只需要在以下情況下需要備份:
1) 剛安裝完成
2) 新增或刪除節點後
3) 新增或刪除voting disk後
[@more@]2、如何查詢voting disk的位置
oracle使用者下執行:crsctl query css votedisk
如:
[oracle@dwdb01 ~]$ crsctl query css votedisk
0. 0 /dev/raw/raw4
1. 0 /dev/raw/raw5
2. 0 /dev/raw/raw6

located 3 votedisk(s).


3、如何備份voting disk
linux/unix下可以用dd命令備份voting disk(windows下用ocopy))。
備份voting disk不需要停止crs,且原則上應該以oracle使用者執行備份。

dd if=voting_disk_name of=backup_file_name
如:
[oracle@dwdb01 rac_comp]$ dd if=/dev/raw/raw4 of=/home/oracle/DBA/backup/rac_comp/voting_disk.bak
978867+0 records in
978867+0 records out
501179904 bytes (501 MB) copied, 119.573 seconds, 4.2 MB/s

備份只需要在一個節點備份就可以,但是為了安全起見,安裝rac後,最好在所有節點都備份一次;當新增或者刪除節點時,也執行一次備份。
備份就放在本地硬碟,與voting disk所在磁碟或陣列分開。

另外,正常情況下,建議每隔一段時間(如一週)做一次備份。
--voting備份例子
------------------------------------------------------------
#!/bin/bash
########################################################################################################
# Name : backup_voting
# Author : Shengkai Su
# Date : 04/25/2011
#
# Description : backup voting disk
#
#
# Usage : ./backup_voting
#
#
# Prerequisite : None
#
#
# Modifications :
#
# When Who What
# ========== =========== ================================================================
# 04/25/2011 shengkai su start developing the script
#
########################################################################################################

##############################
# set env
#############################
. /home/oracle/.bash_profile


DATE=`date +%Y%m%d`
DIRNAME=`dirname $0`
SCRIPT=`basename $0`
KEYWORD="voting"
MYPATH=${DIRNAME}/rac_comp/${KEYWORD}
NODELIST="dwdb02 dwdb03 dwdb04"

DEST=${MYPATH}/${KEYWORD}.${DATE}

###############################
# backup voting disk via dd
###############################
echo "============start at `date` ==============="

#dd if file not exists
if [ -f ${DEST} ];then
echo "file exists"
exit 1
else
SOURCE=`${ORA_CRS_HOME}/bin/crsctl query css votedisk|head -1|awk '{print $3}'`
dd if=${SOURCE} of=${DEST}
chown oracle:dba ${DEST}
fi

###############################################
# copy voting disk backup file to other nodes
###############################################

for N in `echo ${NODELIST}`;do
scp ${DEST} ${N}:`cd ${MYPATH};pwd`
done

----------------------------------------------------------------------------------
-定義定時任務,每週執行一次
# backup voting disk every week
1 14 * * 6 /oracle/DBA/backup/backup_voting.sh




4、恢復voting disk
恢復voting disk也很簡單,也可以用dd命令,只需要把備份時的if和of互換就可以:
dd if=backup_file_name of=voting_disk_name
如:
dd if=/oracle/DBA/backup/rac_comp/voting/voting.20110411 of=/dev/raw/raw4

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/231499/viewspace-1049133/,如需轉載,請註明出處,否則將追究法律責任。

相關文章