11g physical standby datafile lost, use rman backup to recover

恢复步骤和单实例基本一样。

需要注意的是,用rman open数据库的时候,有可能会触发ora-600。

[@more@]

1 备份主库
C:Documents and SettingsAdministrator>rman target sys/oracle@primary catalog r
man_bak/rman_bak@orabak

恢复管理器: Release 11.1.0.6.0 - Production on 星期四 8月 28 14:34:47 2008

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

连接到目标数据库: PRIMARY (DBID=1498826162)
连接到恢复目录数据库

RMAN>

RMAN> show all;

db_unique_name 为 PRIMARY 的数据库的 RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET;
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BZIP2'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:APPADMINISTRATORPRODUCT11.1.0DB_2
DATABASESNCFPRIMARY.ORA'; # default

RMAN>

RMAN> backup as backupset database format 'd:rmanbackupdb_%U.bak';

启动 backup 于 28-8月 -08
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=97 设备类型=DISK
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00002 名称=D:APPADMINISTRATORPRIMARYORADATAPRIMARYSYS
AUX01.DBF
输入数据文件: 文件号=00001 名称=D:APPADMINISTRATORPRIMARYORADATAPRIMARYSYS
TEM01.DBF
输入数据文件: 文件号=00003 名称=D:APPADMINISTRATORPRIMARYORADATAPRIMARYUND
OTBS01.DBF
输入数据文件: 文件号=00005 名称=D:APPADMINISTRATORPRIMARYORADATAPRIMARYEXA
MPLE01.DBF
输入数据文件: 文件号=00006 名称=D:APPADMINISTRATORPRIMARYORADATAPRIMARYTES
T_STDBY.DBF
输入数据文件: 文件号=00007 名称=D:APPADMINISTRATORPRIMARYORADATAPRIMARYTES
T_STDBY02.DBF
输入数据文件: 文件号=00004 名称=D:APPADMINISTRATORPRIMARYORADATAPRIMARYUSE
RS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 28-8月 -08
通道 ORA_DISK_1: 已完成段 1 于 28-8月 -08
段句柄=D:RMANBACKUPDB_0SJP66EA_1_1.BAK 标记=TAG20080828T150338 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:04:38
完成 backup 于 28-8月 -08

启动 Control File and SPFILE Autobackup 于 28-8月 -08
段 handle=D:APPADMINISTRATORFLASH_RECOVERY_AREAPRIMARYAUTOBACKUP2008_08_28
O1_MF_S_663952109_4CDMQQDP_.BKP comment=NONE
完成 Control File and SPFILE Autobackup 于 28-8月 -08
正在启动全部恢复目录的 resync
完成全部 resync

RMAN>

2 主库数据文件丢失
SQL>
SQL> startup mount
ORACLE 例程已经启动。

Total System Global Area 535662592 bytes
Fixed Size 1334380 bytes
Variable Size 293602196 bytes
Database Buffers 234881024 bytes
Redo Buffers 5844992 bytes
数据库装载完毕。
SQL>
SQL> select database_role from v$database;

DATABASE_ROLE
--------------------------------
PRIMARY

SQL>
SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01157: 无法标识/锁定数据文件 7 - 请参阅 DBWR 跟踪文件
ORA-01110: 数据文件 7: 'D:APPADMINISTRATORPRIMARYORADATAPRIMARYTEST_STDBY02.DBF'


SQL>
SQL>


3 restore and recovery
C:Documents and SettingsAdministrator>rman target sys/oracle@primary catalog r
man_bak/rman_bak@orabak

恢复管理器: Release 11.1.0.6.0 - Production on 星期四 8月 28 15:12:28 2008

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

已连接到目标数据库: PRIMARY (DBID=1498826162, 未打开)
连接到恢复目录数据库

RMAN> restore datafile 7;

启动 restore 于 28-8月 -08
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=155 设备类型=DISK

通道 ORA_DISK_1: 正在开始还原数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
通道 ORA_DISK_1: 将数据文件 00007 还原到 D:APPADMINISTRATORPRIMARYORADATAPR
IMARYTEST_STDBY02.DBF
通道 ORA_DISK_1: 正在读取备份片段 D:RMANBACKUPDB_0SJP66EA_1_1.BAK
通道 ORA_DISK_1: 段句柄 = D:RMANBACKUPDB_0SJP66EA_1_1.BAK 标记 = TAG20080828T1
50338
通道 ORA_DISK_1: 已还原备份片段 1
通道 ORA_DISK_1: 还原完成, 用时: 00:00:03
完成 restore 于 28-8月 -08

RMAN> recover datafile 7;

启动 recover 于 28-8月 -08
使用通道 ORA_DISK_1

正在开始介质的恢复
介质恢复完成, 用时: 00:00:00

完成 recover 于 28-8月 -08

RMAN>

RMAN> alter database open;

数据库已打开

SQL>
SQL> select status from v$instance;

STATUS
------------------------
OPEN

SQL>

4 可能会触发Ora-600,还是用sqlplus Open数据库比较保险
RMAN> alter database open;

数据库已打开
RPC 调用似乎无法在通道default上启动
在通道 default 上 RPC 调用成功
RMAN-06900: 警告: 无法生成 V$RMAN_STATUS 或 V$RMAN_OUTPUT 行
RMAN-06901: 警告: 禁止更新 V$RMAN_STATUS 和 V$RMAN_OUTPUT 行
来自目标数据库的 ORACLE 错误:
ORA-03123: 操作将阻塞

DBGANY: Mismatched message length! [15:15:09.484] (krmiduem)
DBGANY: Mismatched message length! [15:15:09.484] (krmiduem)

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00600: internal error, arguments [3045] [] [] [] []
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03008: 在执行恢复目录的自动重新同步时出错
ORA-03127: no new operations allowed until the active operation ends
ORA-03127: no new operations allowed until the active operation ends

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

转载于:http://blog.itpub.net/593324/viewspace-1009740/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值