NetBackup 恢复手册.docx

上传人:b****8 文档编号:9559864 上传时间:2023-02-05 格式:DOCX 页数:23 大小:29.31KB
下载 相关 举报
NetBackup 恢复手册.docx_第1页
第1页 / 共23页
NetBackup 恢复手册.docx_第2页
第2页 / 共23页
NetBackup 恢复手册.docx_第3页
第3页 / 共23页
NetBackup 恢复手册.docx_第4页
第4页 / 共23页
NetBackup 恢复手册.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

NetBackup 恢复手册.docx

《NetBackup 恢复手册.docx》由会员分享,可在线阅读,更多相关《NetBackup 恢复手册.docx(23页珍藏版)》请在冰豆网上搜索。

NetBackup 恢复手册.docx

NetBackup恢复手册

StrategicServicesforStorageandStorageManagement

 

XX基金

NetBackup恢复手册

 

PRESENTEDBY:

VERITASEnterpriseConsultingServices

1600PlymouthStreet

MountainView,CA94043

 

22Feb2004

 

目录

1.文件本机恢复测试3

2.本地恢复操作系统测试5

3.文件异机恢复测试6

4.oracle数据库文件毁坏恢复测试8

5.oracle数据库控制文件毁坏恢复测试17

6.SQLdatabase恢复测试19

7.BMRAIX恢复测试20

8.BMRWindows恢复测试22

9.Vault的全备份恢复测试24

10.Vault的全备份和增量备份恢复测试26

1.文件本机恢复测试

对每台安装NetBackupClient的机器都进行一次备份和恢复测试,备份一个小目录,恢复到本机

a.准备工作

为每台安装了NetBackupClient的机器建立一个备份/usr/openv的测试备份策略,备份都通过网络写到shwp0007上的带库中,挑选若干盘磁带放在test_pool中。

确认该机器/tmp目录下有400MB以上的空间。

确认网络正常

确认NetBackupMasterserver正常运行

b.测试方法

立刻启动备份策略,确认备份进程正常mount磁带,写磁带并以状态0结束

在恢复GUI中找到刚才备份的数据,恢复该目录到/tmp目录下,在UNIX下用chkum比较两个二进制文件的校验值。

直接用vi(或diff)来比较两个文本文件是否一致。

c.清理工作

删除建立的测试备份策略,删除test_pool,删除/tmp下恢复出的数据

d.出错处理方法

根据NetBackupTroubleshooting文档资料对错误状态进行分析,纠正错误配置后重新进行测试

测试结果:

主机名

pass

fail

2.本地恢复操作系统测试

对测试机进行一次全备份和恢复测试,备份全部操作系统,恢复到本机

a.准备工作

为这台测试机建立一个备份ALL_LOCAL_DRIVES和system_state:

/的测试备份策略,备份都通过网络写到shwp0007上的带库中,挑选若干盘磁带放在test_pool中。

确认网络正常

确认NetBackupMasterserver正常运行

b.测试方法

立刻启动备份策略,确认备份进程正常mount磁带,写磁带并以状态0结束

在恢复GUI中找到刚才备份的数据,恢复覆盖整个操作系统。

c.清理工作

删除建立的测试备份策略,删除test_pool

d.出错处理方法

根据NetBackupTroubleshooting文档资料对错误状态进行分析,纠正错误配置后重新进行测试

测试结果:

主机名

pass

fail

3.文件异机恢复测试

对每台安装NetBackupClient的机器都进行一次备份和恢复测试,备份一个小目录,恢复到shwp0007本机

a.准备工作

为每台安装了NetBackupClient的机器建立一个备份/usr/openv的测试备份策略,备份都通过网络写到shwp0007的带库中,挑选若干盘磁带放在test_pool中。

确认该机器/tmp目录下有400MB以上的空间。

确认网络正常

确认NetBackupMasterserver正常运行

b.测试方法

在jfkdb2中的/usr/openv/netbackup/db目录下建altnames目录,然后创建空文件No.Restrictions.

立刻启动备份策略,确认备份进程正常mount磁带,写磁带并以状态0结束

在恢复GUI中找到刚才备份的数据,恢复该目录到jfkdb2的/tmp目录下,在UNIX下用chkum比较两个二进制文件的校验值。

直接用vi(或diff)来比较两个文本文件是否一致。

c.清理工作

删除建立的测试备份策略,删除test_pool,删除jfkdb2的/tmp下恢复出的数据

d.出错处理方法

根据NetBackupTroubleshooting文档资料对错误状态进行分析,纠正错误配置后重新进行测试

测试结果:

主机名

pass

fail

4.oracle数据库文件毁坏恢复测试

在测试机上对Oracle数据库进行一次备份和恢复测试,备份全数据库,恢复数据库

a.准备工作

1.为测试机安装Oracle数据库

2.为测试机安装NetBackup客户端和数据库agent,link该测试数据库

3.为该测试机建立一个备份数据库的测试备份策略,挑选磁带放在test_pool中。

配置rman备份脚本

4.确认网络正常

5.确认NetBackupMasterserver正常运行

b.测试方法

1.在数据库中创建一张表,写些数据

2.立刻启动备份策略,确认备份进程正常mount磁带,写磁带并以状态0结束,查看rman脚本的日志确认备份成功

3.关闭数据库

>shutdownimmediate

4.将当前的几个datafile的裸设备dd掉

5.将数据库置于mount状态

>startupmount

6.通过手工执行rman恢复数据,查看刚才的表中数据还在

c.清理工作

删除建立的测试备份策略,删除test_pool

d.出错处理方法

根据NetBackupTroubleshooting文档资料和查阅oracleMetalink对错误状态进行分析,纠正错误配置后重新进行测试

RMAN备份脚本

#

#---------------------------------------------------------------------------

#hot_database_backup.sh

#---------------------------------------------------------------------------

#ThisscriptusesRecoveryManagertotakeahot(inconsistent)database

#backup.Ahotbackupisinconsistentbecauseportionsofthedatabaseare

#beingmodifiedandwrittentothediskwhilethebackupisprogressing.

#YoumustrunyourdatabaseinARCHIVELOGmodetomakehotbackups.Itis

#assumedthatthisscriptwillbeexecutedbyuserroot.InorderforRMAN

#toworkproperlyweswitchuser(su-)totheoracledbaaccountbefore

#execution.IfthisscriptrunsunderauseraccountthathasOracledba

#privilege,itwillbeexecutedusingthisuser’saccount.

#---------------------------------------------------------------------------

#---------------------------------------------------------------------------

#Determinetheuserwhichisexecutingthisscript.

#---------------------------------------------------------------------------

CUSER=‘id|cut-d"("-f2|cut-d")"-f1‘

#---------------------------------------------------------------------------

#Putoutputin.out.Changeasdesired.

#Note:

outputdirectoryrequireswritepermission.

#---------------------------------------------------------------------------

RMAN_LOG_FILE=${0}.out

#---------------------------------------------------------------------------

#Youmaywanttodeletetheoutputfilesothatbackupinformationdoes

#notaccumulate.Ifnot,deletethefollowinglines.

#---------------------------------------------------------------------------

if[-f"$RMAN_LOG_FILE"]

then

rm-f"$RMAN_LOG_FILE"

fi

#-----------------------------------------------------------------

#Initializethelogfile.

#-----------------------------------------------------------------

echo>>$RMAN_LOG_FILE

chmod666$RMAN_LOG_FILE

#---------------------------------------------------------------------------

#Logthestartofthisscript.

#---------------------------------------------------------------------------

echoScript$0>>$RMAN_LOG_FILE

echo====startedon‘date‘====>>$RMAN_LOG_FILE

echo>>$RMAN_LOG_FILE

#---------------------------------------------------------------------------

#Replace/db/oracle/product/ora81,below,withtheOraclehomepath.

#---------------------------------------------------------------------------

ORACLE_HOME=/db/oracle/product/ora81

exportORACLE_HOME

#---------------------------------------------------------------------------

#Replaceora81,below,withtheOracleSIDofthetargetdatabase.

#---------------------------------------------------------------------------

ORACLE_SID=ora81

exportORACLE_SID

#---------------------------------------------------------------------------

#Replaceora81,below,withtheOracleDBAuserid(account).

#---------------------------------------------------------------------------

ORACLE_USER=ora81

#---------------------------------------------------------------------------

#Setthetargetconnectstring.

#Replace"sys/manager",below,withthetargetconnectstring.

#---------------------------------------------------------------------------

TARGET_CONNECT_STR=sys/manager

#---------------------------------------------------------------------------

#SettheOracleRecoveryManagername.

#---------------------------------------------------------------------------

RMAN=$ORACLE_HOME/bin/rman

#---------------------------------------------------------------------------

#Printoutthevalueofthevariablessetbythisscript.

#---------------------------------------------------------------------------

echo>>$RMAN_LOG_FILE

echo"RMAN:

$RMAN">>$RMAN_LOG_FILE

echo"ORACLE_SID:

$ORACLE_SID">>$RMAN_LOG_FILE

echo"ORACLE_USER:

$ORACLE_USER">>$RMAN_LOG_FILE

echo"ORACLE_HOME:

$ORACLE_HOME">>$RMAN_LOG_FILE

#---------------------------------------------------------------------------

#Printoutthevalueofthevariablessetbybphdb.

#---------------------------------------------------------------------------

echo>>$RMAN_LOG_FILE

echo"NB_ORA_FULL:

$NB_ORA_FULL">>$RMAN_LOG_FILE

echo"NB_ORA_INCR:

$NB_ORA_INCR">>$RMAN_LOG_FILE

echo"NB_ORA_CINC:

$NB_ORA_CINC">>$RMAN_LOG_FILE

echo"NB_ORA_SERV:

$NB_ORA_SERV">>$RMAN_LOG_FILE

echo"NB_ORA_POLICY:

$NB_ORA_POLICY">>$RMAN_LOG_FILE

#---------------------------------------------------------------------------

#NOTE:

Thisscriptassumesthatthedatabaseisproperlyopened.Ifdesired,

#thiswouldbetheplacetoverifythat.

#---------------------------------------------------------------------------

echo>>$RMAN_LOG_FILE

#---------------------------------------------------------------------------

#IfthisscriptisexecutedfromaNetBackupschedule,NetBackup

#setsanNB_ORAenvironmentvariablebasedonthescheduletype.

#TheNB_ORAvariableisthenusedtodynamicallysetBACKUP_TYPE

#Forexample,when:

#scheduletypeisBACKUP_TYPEis

#------------------------------

#AutomaticFullINCREMENTALLEVEL=0

#AutomaticDifferentialIncrementalINCREMENTALLEVEL=1

#AutomaticCumulativeIncrementalINCREMENTALLEVEL=1CUMULATIVE

#

#Foruserinitiatedbackups,BACKUP_TYPEdefaultstoincremental

#level0(full).Tochangethedefaultforauserinitiated

#backuptoincrementalorincrementalcumulative,uncomment

#oneofthefollowingtwolines.

#BACKUP_TYPE="INCREMENTALLEVEL=1"

#BACKUP_TYPE="INCREMENTALLEVEL=1CUMULATIVE"

#

#Notethatweuseincrementallevel0tospecifyfullbackups.

#Thatisbecause,althoughtheyareidenticalincontent,only

#theincrementallevel0backupcanhaveincrementalbackupsof

#level>0appliedtoit.

#---------------------------------------------------------------------------

if["$NB_ORA_FULL"="1"]

then

echo"Fullbackuprequested">>$RMAN_LOG_FILE

BACKUP_TYPE="INCREMENTALLEVEL=0"

elif["$NB_ORA_INCR"="1"]

then

echo"Differentialincrementalbackuprequested">>$RMAN_LOG_FILE

BACKUP_TYPE="INCREMENTALLEVEL=1"

elif["$NB_ORA_CINC"="1"]

then

echo"Cumulativeincrementalbackuprequested">>$RMAN_LOG_FILE

BACKUP_TYPE="INCREMENTALLEVEL=1CUMULATIVE"

elif["$BACKUP_TYPE"=""]

then

echo"Default-Fullbackuprequested">>$RMAN_LOG_FILE

BACKUP_TYPE="INCREMENTALLEVEL=0"

fi

#---------------------------------------------------------------------------

#CallRecoveryManagertoinitiatethebackup.Thisexampledoesnotusea

#RecoveryCatalog.Ifyouchoosetouseone,replacetheoption’nocatalog’

#fromthermancommandlinebelowwiththe

#’rcvcat/@’statement.

#

#Note:

AnyenvironmentvariablesneededatruntimebyRMAN

#mustbesetandexportedwithintheswitchuser(su)command.

#---------------------------------------------------------------------------

#Backsupthewholedatabase.Thisbackupispartoftheincremental

#strategy(thismeansitcanhaveincrementalbackupsoflevels>0

#appliedtoit).

#

#Wedonotneedtoexplicitlyrequestthecontrolfiletobeincluded

#inthisbackup,asitisautomaticallyincludedeachtimefile1of

#thesystemtablespaceisbackedup(theinference:

asitisawhole

#databasebackup,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1