所有的控制文件损坏、数据文件损坏,(redolog和归档是完好),进行完全恢复:
startup nomount;
RMAN> restore controlfile from "D:\orabacktcyang\CONTROFILE_C-3372686320-20120803-06";
启动 restore 于 05-8月 -12
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=66 设备类型=DISK
通道 ORA_DISK_1: 正在还原控制文件
通道 ORA_DISK_1: 还原完成, 用时: 00:00:04
输出文件名=D:\TCYANG\TCYANG\CONTROL01.CTL
输出文件名=D:\TCYANG\TCYANG\CONTROL02.CTL
输出文件名=D:\TCYANG\TCYANG\CONTROL03.CTL
完成 restore 于 05-8月 -12
SQL> alter database mount;
数据库已更改。
SQL> col name format a25
SQL> select a.name,a.checkpoint_change# "start_SCN", b.checkpoint_change# "last_SCN"
2 from v$datafile_header a, v$datafile b
3 where a.file#=b.file#;
NAME start_SCN last_SCN
------------------------- ---------- ----------
D:\TCYANG\TCYANG\SYSTEM01 208300 221585
.DBF
D:\TCYANG\TCYANG\SYSAUX01 1792 221585
.DBF
D:\TCYANG\TCYANG\UNDOTBS0 2889 221585
1.DBF
D:\TCYANG\TCYANG\USERS01. 13718 221585
DBF
NAME start_SCN last_SCN
------------------------- ---------- ----------
SQL>
SQL> alter database open resetlogs;
alter database open resetlogs
*
第 1 行出现错误:
ORA-01152: 文件 1 没有从过旧的备份中还原
ORA-01110: 数据文件 1: 'D:\TCYANG\TCYANG\SYSTEM01.DBF'
SQL> select a.name,a.checkpoint_change# "start_SCN", b.checkpoint_change# "last_SCN"
2 from v$datafile_header a, v$datafile b
3 where a.file#=b.file#;
NAME start_SCN last_SCN
------------------------- ---------- ----------
D:\TCYANG\TCYANG\SYSTEM01 208300 221585
.DBF
D:\TCYANG\TCYANG\SYSAUX01 1792 221585
.DBF
D:\TCYANG\TCYANG\UNDOTBS0 2889 221585
1.DBF
D:\TCYANG\TCYANG\USERS01. 13718 221585
DBF
NAME start_SCN last_SCN
------------------------- ---------- ----------
SQL>
SQL> alter database open resetlogs;
alter database open resetlogs
*
第 1 行出现错误:
ORA-01152: 文件 1 没有从过旧的备份中还原
ORA-01110: 数据文件 1: 'D:\TCYANG\TCYANG\SYSTEM01.DBF'
SQL> recover database using backup controlfile until cancel;
ORA-00283: 恢复会话因错误而取消
ORA-01110: 数据文件 2: 'D:\TCYANG\TCYANG\SYSAUX01.DBF'
ORA-01122: 数据库文件 2 验证失败
ORA-01110: 数据文件 2: 'D:\TCYANG\TCYANG\SYSAUX01.DBF'
ORA-01203: 此文件的原型错误 - 创建 SCN 错误
RMAN> restore datafile 1;
启动 restore 于 05-8月 -12
释放的通道: ORA_DISK_1
启动 implicit crosscheck backup 于 05-8月 -12
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=66 设备类型=DISK
已交叉检验的 13 对象
完成 implicit crosscheck backup 于 05-8月 -12
启动 implicit crosscheck copy 于 05-8月 -12
使用通道 ORA_DISK_1
完成 implicit crosscheck copy 于 05-8月 -12
搜索恢复区中的所有文件
正在编制文件目录...
目录编制完毕
已列入目录的文件的列表
=======================
文件名: D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1
_MF_1_12_81PQNN2F_.ARC
文件名: D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1
_MF_1_13_81PQZ6H6_.ARC
文件名: D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1
_MF_1_14_81PR4Y88_.ARC
文件名: D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1
_MF_1_15_81PR5ZG0_.ARC
文件名: D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1
_MF_1_16_81PRB6X2_.ARC
文件名: D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1
_MF_1_16_81QR9LG4_.ARC
文件名: D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1
_MF_1_17_81PRH9YB_.ARC
文件名: D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1
_MF_1_18_81PRW80J_.ARC
使用通道 ORA_DISK_1
正在略过数据文件 1; 已还原到文件 D:\TCYANG\TCYANG\SYSTEM01.DBF
没有完成还原; 所有文件均为只读或脱机文件或者已经还原
完成 restore 于 05-8月 -12
RMAN> restore datafile 2;
启动 restore 于 05-8月 -12
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始还原数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
通道 ORA_DISK_1: 将数据文件 00002 还原到 D:\TCYANG\TCYANG\SYSAUX01.DBF
通道 ORA_DISK_1: 正在读取备份片段 D:\ORABACKTCYANG\DB0_TCYANG_20120803_1
通道 ORA_DISK_1: 段句柄 = D:\ORABACKTCYANG\DB0_TCYANG_20120803_1 标记 = TAG20120
803T161710
通道 ORA_DISK_1: 已还原备份片段 1
通道 ORA_DISK_1: 还原完成, 用时: 00:00:25
完成 restore 于 05-8月 -12
RMAN> restore datafile 3;
启动 restore 于 05-8月 -12
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始还原数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
通道 ORA_DISK_1: 将数据文件 00003 还原到 D:\TCYANG\TCYANG\UNDOTBS01.DBF
通道 ORA_DISK_1: 正在读取备份片段 D:\ORABACKTCYANG\DB0_TCYANG_20120803_1
通道 ORA_DISK_1: 段句柄 = D:\ORABACKTCYANG\DB0_TCYANG_20120803_1 标记 = TAG20120
803T161710
通道 ORA_DISK_1: 已还原备份片段 1
通道 ORA_DISK_1: 还原完成, 用时: 00:00:35
完成 restore 于 05-8月 -12
RMAN> restore datafile 4;
启动 restore 于 05-8月 -12
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始还原数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
通道 ORA_DISK_1: 将数据文件 00004 还原到 D:\TCYANG\TCYANG\USERS01.DBF
通道 ORA_DISK_1: 正在读取备份片段 D:\ORABACKTCYANG\DB0_TCYANG_20120803_1
通道 ORA_DISK_1: 段句柄 = D:\ORABACKTCYANG\DB0_TCYANG_20120803_1 标记 = TAG20120
803T161710
通道 ORA_DISK_1: 已还原备份片段 1
通道 ORA_DISK_1: 还原完成, 用时: 00:00:01
完成 restore 于 05-8月 -12
RMAN>
SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 208300 (在 08/03/2012 16:17:10 生成) 对于线程 1 是必需的
ORA-00289: 建议:
D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1_MF_1_12
_81Q29WBN_.ARC
ORA-00280: 更改 208300 (用于线程 1) 在序列 #12 中
指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
auto
ORA-00279: 更改 208337 (在 08/03/2012 16:18:03 生成) 对于线程 1 是必需的
ORA-00289: 建议:
D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1_MF_1_13
_81Q2CVF1_.ARC
ORA-00280: 更改 208337 (用于线程 1) 在序列 #13 中
ORA-00278: 此恢复不再需要日志文件
'D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1_MF_1_1
2_81Q29WBN_.ARC'
ORA-00279: 更改 208382 (在 08/03/2012 16:19:07 生成) 对于线程 1 是必需的
ORA-00289: 建议:
D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1_MF_1_14
_81Q2DBS3_.ARC
ORA-00280: 更改 208382 (用于线程 1) 在序列 #14 中
ORA-00278: 此恢复不再需要日志文件
'D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1_MF_1_1
3_81Q2CVF1_.ARC'
ORA-00279: 更改 208411 (在 08/03/2012 16:19:22 生成) 对于线程 1 是必需的
ORA-00289: 建议:
D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1_MF_1_15
_81QR2YHY_.ARC
ORA-00280: 更改 208411 (用于线程 1) 在序列 #15 中
ORA-00278: 此恢复不再需要日志文件
'D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1_MF_1_1
4_81Q2DBS3_.ARC'
ORA-00279: 更改 221466 (在 08/03/2012 22:29:50 生成) 对于线程 1 是必需的
ORA-00289: 建议:
D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1_MF_1_16
_81QR9LG4_.ARC
ORA-00280: 更改 221466 (用于线程 1) 在序列 #16 中
ORA-00278: 此恢复不再需要日志文件
'D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1_MF_1_1
5_81QR2YHY_.ARC'
ORA-00279: 更改 221635 (在 08/03/2012 22:33:22 生成) 对于线程 1 是必需的
ORA-00289: 建议:
D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_05\O1_MF_1_17
_%U_.ARC
ORA-00280: 更改 221635 (用于线程 1) 在序列 #17 中
ORA-00278: 此恢复不再需要日志文件
'D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_03\O1_MF_1_1
6_81QR9LG4_.ARC'
ORA-00308: 无法打开归档日志
'D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_05\O1_MF_1_1
7_%U_.ARC'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。
SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 221635 (在 08/03/2012 22:33:22 生成) 对于线程 1 是必需的
ORA-00289: 建议:
D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\TCYANG\ARCHIVELOG\2012_08_05\O1_MF_1_17
_%U_.ARC
ORA-00280: 更改 221635 (用于线程 1) 在序列 #17 中
指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
cancel
介质恢复已取消。
SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项
SQL> alter database open resetlogs;
数据库已更改。
SQL>
SQL> select a.name,a.checkpoint_change# "start_SCN", b.checkpoint_change# "last_SCN"
2 from v$datafile_header a, v$datafile b
3 where a.file#=b.file#;
NAME start_SCN last_SCN
------------------------- ---------- ----------
D:\TCYANG\TCYANG\SYSTEM01 221639 221639
.DBF
D:\TCYANG\TCYANG\SYSAUX01 221639 221639
.DBF
D:\TCYANG\TCYANG\UNDOTBS0 221639 221639
1.DBF
D:\TCYANG\TCYANG\USERS01. 221639 221639
DBF
NAME start_SCN last_SCN
------------------------- ---------- ----------