主库数据文件丢失,有两种恢复方法。
1 利用RMAN备份恢复,参考 http://sdusun.itpub.net/post/7915/469735
2 利用物理备库恢复
在Oracle 11g,可以使用备库的数据文件去recover主库丢失的数据文件。
如果备库是up-to-date的,并且在拷贝文件的时候网络不会成为问题。
0
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> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01157: 无法标识/锁定数据文件 7 - 请参阅 DBWR 跟踪文件
ORA-01110: 数据文件 7: 'D:APPADMINISTRATORPRIMARYORADATAPRIMARYTEST_STDBY02.DBF'
SQL>
1 Connect to the standby database as the target database:
C:Documents and SettingsAdministrator>
C:Documents and SettingsAdministrator>rman
恢复管理器: Release 11.1.0.6.0 - Production on 星期四 8月 28 16:03:27 2008
Copyright (c) 1982, 2007, Oracle. All rights reserved.
RMAN> connect target sys@standby
目标数据库口令:
连接到目标数据库: PRIMARY (DBID=1498826162)
RMAN>
2 Connect to the primary database as the auxiliary database:
RMAN> connect auxiliary sys@primary
辅助数据库口令:
已连接到辅助数据库: PRIMARY (DBID=1498826162)
RMAN>
3 Back up the datafile on the standby host across the network to a location on the primary host.
RMAN>
RMAN> backup as copy datafile 7 auxiliary format 'D:APPADMINISTRATORPRIMARYORADATAPRIMARYTEST_STDBY02.DBF';
启动 backup 于 28-8月 -08
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=120 设备类型=DISK
通道 ORA_DISK_1: 启动数据文件副本
输入数据文件: 文件号=00007 名称=/u01/app/oradata/standby/TEST_STDBY02.DBF
输出文件名=D:APPADMINISTRATORPRIMARYORADATAPRIMARYTEST_STDBY02.DBF 标记=TAG20080828T163105 RECID=0 STAMP=0
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:01
完成 backup 于 28-8月 -08
RMAN>
4 Exit the RMAN client as follows:
察看主库目录,D:APPADMINISTRATORPRIMARYORADATAPRIMARYTEST_STDBY02.DB 的确已经copy过来。
EXIT;
如果使用RMAN备份之后,主库的归档日志还没有delete的话,可以简单的恢复(第五步);
反之,跳到第6步。
5
SQL>
SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01113: 文件 7 需要介质恢复
ORA-01110: 数据文件 7: 'D:APPADMINISTRATORPRIMARYORADATAPRIMARYTEST_STDBY02.DBF'
SQL>
SQL> recover datafile 7;
完成介质恢复。
SQL> alter database open;
数据库已更改。
6 Start RMAN and connect to the primary database as target, and to the recovery catalog:
C:Documents and SettingsAdministrator>rman
恢复管理器: Release 11.1.0.6.0 - Production on 星期四 8月 28 16:36:07 2008
Copyright (c) 1982, 2007, Oracle. All rights reserved.
RMAN> connect target sys@primary
目标数据库口令:
连接到目标数据库: PRIMARY (DBID=1498826162)
RMAN>
RMAN> connect catalog rman_bak@orabak
恢复目录数据库口令:
连接到恢复目录数据库
RMAN>
7 Use the CATALOG DATAFILECOPY command to catalog this datafile copy so that RMAN can use it.:
CATALOG DATAFILECOPY 'D:APPADMINISTRATORPRIMARYORADATAPRIMARYTEST_STDBY02.DBF';
Then use the SWITCH DATAFILE command to switch the datafile copy so that /disk9/df2copy.dbf becomes the current datafile:
RUN {
SET NEWNAME FOR DATAFILE 2 TO 'D:APPADMINISTRATORPRIMARYORADATAPRIMARYTEST_STDBY02.DBF';
SWITCH DATAFILE 2;
}
前篇(08-08-28): 11g physical standby datafile lost, use rman backup to recover
后篇(08-08-29): 11g physical standby , change prrotect mode, ORA-16072
最新回复(2件)
| 主题/内容 | 作者/日时 |
|---|---|
|
Re: 11g physical standby datafile lost, use standby database to recover
恢复完了,standby是否需要重建? |
overamrs
08-08-29 10:42 |
|
Re: 11g physical standby datafile lost, use standby database to recover
我这里不需要。 incomplete recover需要重建。 |
SUN
08-08-29 12:23 |
发表评论
引用链接
- 您可以按照以下步骤引用本文.本站收到您的引用通知后, 将自动链接您的文章, 以方便别人阅览 .
- 1. 启动您自己的博客管理页面, 并进入发表新文章的画面, 输入文章的内容. (如果您是ITPUB的博客请点这里.)
- 2. 复制下面虚线框里的连接字串, 把它们粘贴到您的文章中, 按照您的喜好修改一下表示文字.
- 3. 确认您选择了"发送引用通知"的选项.
- 4. 发表您的文章.
- 好啦, 您的文章就可以被自动链接到本站啦.
| « | 十二月 2008 | » | ||||
|---|---|---|---|---|---|---|
| 一 | 二 | 三 | 四 | 五 | 六 | 日 |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 | ||||
| Oracle Blog |
|---|
|
|
| Oracle论坛 |
|---|
|
|
|
|
| 联系方式 |
|---|
|
|
| 友情链接 |
|---|
|
|
|
|
|
|
|
|
|
|
|
|
