RAC一个节点恢复另一个节点在带库上的备份

对于RAC环境而言,如果两个实例分别连接带库进行备份,那么默认情况下,彼此是看不到对方的备份信息的。

 

 

看一个简单的例子,在RAC环境的节点2上执行备份:

bash-3.00$ rman target /

恢复管理器: Release 10.2.0.3.0 - Production on 星期二 7 21 11:05:47 2009

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

连接到目标数据库: TRADEDB (DBID=4181457554)

RMAN> run
2> {
3> allocate channel c1 device type sbt;
4> backup spfile;
5> }

使用目标数据库控制文件替代恢复目录
分配的通道: c1
通道 c1: sid=304 实例=tradedb2 devtype=SBT_TAPE
通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)

启动 backup 21-7 -09
通道 c1: 启动全部数据文件备份集
通道 c1: 正在指定备份集中的数据文件
在备份集中包含当前的 SPFILE
通道 c1: 正在启动段 1 21-7 -09
通道 c1: 已完成段 1 21-7 -09
段句柄=94kkmdp4_1_1 标记=TAG20090721T110612 注释=API Version 2.0,MMS Version 5.0.0.0
通道 c1: 备份集已完成, 经过时间:00:02:46
完成 backup 21-7 -09
释放的通道: c1

在节点2上,进行恢复的测试:

RMAN> run
2> {
3> allocate channel c1 device type sbt;
4> restore spfile to '/export/home/oracle/spfiletradedb2.ora' from '94kkmdp4_1_1';
5> }

分配的通道: c1
通道 c1: sid=304 实例=tradedb2 devtype=SBT_TAPE
通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)

启动 restore 21-7 -09

通道 c1: 已找到的自动备份: 94kkmdp4_1_1
通道 c1: 从自动备份复原 SPFILE 已完成
完成 restore 21-7 -09
释放的通道: c1

显然不会有任何的问题,但是对于节点1来说,虽然通过读取控制文件,可以“看到”这个备份信息,但是它无法从带库上找到这个文件:

bash-3.00$ rman target /

恢复管理器: Release 10.2.0.3.0 - Production on 星期二 7 21 14:28:10 2009

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

连接到目标数据库: TRADEDB (DBID=4181457554)

RMAN> list backup of spfile tag 'TAG20090721T110612';


备份集列表
===================

BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间 
------- ---- -- ---------- ----------- ------------ ----------
1266    Full    256.00K    SBT_TAPE    00:02:37     21-7
-09
        BP
关键字: 2297   状态: AVAILABLE  已压缩: NO  标记: TAG20090721T110612
       
句柄: 94kkmdp4_1_1   介质:
 
包含的 SPFILE: 修改时间: 21-7 -09

RMAN> run
2> {
3> allocate channel c1 device type sbt;
4> restore spfile to '/export/home/oracle/spfiletradedb2.ora' from '94kkmdp4_1_1';
5> }

使用目标数据库控制文件替代恢复目录
分配的通道: c1
通道 c1: sid=136 实例=tradedb1 devtype=SBT_TAPE
通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)

启动 restore 21-7 -09

释放的通道: c1
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: restore
命令 ( 07/21/2009 11:24:05 ) 失败
RMAN-06172:
没有找到自动备份或指定的句柄不是有效副本或片段

为了使得当前节点可以看到其他节点的备份信息,需要在分配连接的时候指定NB_ORA_CLIENT信息:

RMAN> run
2> {
3> allocate channel c1 device type sbt parms 'ENV=(NB_ORA_CLIENT=ahrac2)';
4> restore spfile to '/export/home/oracle/spfiletradedb2.ora' from '94kkmdp4_1_1';
5> }

使用目标数据库控制文件替代恢复目录
分配的通道: c1
通道 c1: sid=126 实例=tradedb1 devtype=SBT_TAPE
通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)

启动 restore 21-7 -09

通道 c1: 已找到的自动备份: 94kkmdp4_1_1
释放的通道: c1
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: restore
命令 ( 07/21/2009 14:28:29 ) 失败
ORA-19870:
读取备份段 94kkmdp4_1_1 时出错
ORA-19507:
无法检索顺序文件, 句柄= "94kkmdp4_1_1", 参数 = ""
ORA-27029: skgfrtrv: sbtrestore
返回错误
ORA-19511:
从介质管理器层接收到错误, 错误文本为:
   Failed to process backup file <94kkmdp4_1_1>

虽然这里仍然报错,但是错误信息已经改变,而且RMAN已经明确的给出信息:通道 c1: 已找到的自动备份: 94kkmdp4_1_1

只不过是其他的原因导致恢复过程出现了错误。除了在RMAN分配CHANNEL的时候需要配置CLIENT信息,还要在NETBACKUP的安装SERVER上进行设置,确保任何名称的客户端都可以读取备份信息:

bash-3.00# cd /usr/openv/netbackup/db
bash-3.00# mkdir altnames
bash-3.00# touch altnames/No.Restrictions

创建netbackup/db/altnames/No.Restrictions文件,然后再次执行恢复:

RMAN> run
2> {
3> allocate channel c1 device type sbt parms 'ENV=(NB_ORA_CLIENT=ahrac2)';
4> restore spfile to '/export/home/oracle/spfiletradedb2.ora' from '94kkmdp4_1_1';
5> }

分配的通道: c1
通道 c1: sid=126 实例=tradedb1 devtype=SBT_TAPE
通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)

启动 restore 21-7 -09

通道 c1: 已找到的自动备份: 94kkmdp4_1_1
通道 c1: 从自动备份复原 SPFILE 已完成
完成 restore 21-7 -09
释放的通道: c1

终于在节点1上恢复了节点2在带库上的备份。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-610576/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/4227/viewspace-610576/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值