如果用了 using backup controlfile 就要 open with resetlogs。
备份完删了一个数据文件和所有的control文件,
恢复测试步骤如下:
1。startup nomount pfile='d:\rman\test。
pfile'
2。restore controlfile from "D:\RMAN\TEST_19_688408132_1。CTL"
3。alter database mount;
4。restore database;
5。recover database;
6。
recover database until cancel using backup controlfile;(在sqlplus里面)
SQL> recover database until cancel using backup controlfile;
ORA-00279: ?? 597595 (? 06/01/2009 16:33:00 ??) ???? 1 ????
ORA-00289: ??:
D:\ORACLE\PRODUCT\10。
2。0\FLASH_RECOVERY_AREA\TEST\ARCHIVELOG\2009_06_01\O1_MF_1_6_%U_。ARC
ORA-00280: ?? 597595 (???? 1) ??? #6 ?
指定日志: {=suggested | filename | AUTO | CANCEL}
D:\ORACLE\PRODUCT\10。
2。0\ORADATA\TEST\REDO03。LOG
已应用的日志。
完成介质恢复。
recover database until cancel using backup controlfile是可以应用online日志的, recover database until cancel 时, 只要输入 online redo log file 的档名,就可以用到 online redo log file。
当所有 online redo log files 都应用後, 就是一个完全恢复了。
7。
alter database open RESETLOGS;
由于我们恢复过后control file中的SCN号要早于现在的,但是当我们启动的时候,redo log中的SCN号会和control file中旧的SCN统一,但是我们的redo log实际的SCN号并不是control file中所记录的
所以要resetlog打开数据库。
全部