SQL*Plus: Release 9.2.0.5.0 - Production on 星期一 5月 10 20:07:43 2004
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
已连接到空闲例程。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 319889436 bytes
Fixed Size 454684 bytes
Variable Size 109051904 bytes
Database Buffers 209715200 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
数据库已经打开。
SQL> connect scott/tiger
已连接。
SQL> select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
BAIDU TABLE
BONUS TABLE
CATT TABLE
DEPT TABLE
EMP TABLE
MCGROUP TABLE
SALGRADE TABLE
TABS1 TABLE
已选择8行。
只有8个表
SQL> connect / as sysdba
已连接。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
此时,拷贝冷备份的文件(数据、在线日志、控制)回去,此实验之前做的冷备份
SQL> startup mount;
ORACLE 例程已经启动。
Total System Global Area 319889436 bytes
Fixed Size 454684 bytes
Variable Size 109051904 bytes
Database Buffers 209715200 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 261342883 (在 05/10/2004 14:09:44 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLELOG\ARC00047.001
ORA-00280: 更改 261342883 对于线程 1 是按序列 # 47 进行的
指定日志: {
auto
ORA-00279: 更改 261343932 (在 05/10/2004 14:38:05 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLELOG\ARC00048.001
ORA-00280: 更改 261343932 对于线程 1 是按序列 # 48 进行的
ORA-00278: 此恢复不再需要日志文件 'E:\ORACLELOG\ARC00047.001'
ORA-00279: 更改 261345972 (在 05/10/2004 14:38:12 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLELOG\ARC00049.001
ORA-00280: 更改 261345972 对于线程 1 是按序列 # 49 进行的
ORA-00278: 此恢复不再需要日志文件 'E:\ORACLELOG\ARC00048.001'
此处省去众多相似的回复信息
ORA-00279: 更改 261395028 (在 05/10/2004 14:41:12 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLELOG\ARC00073.001
ORA-00280: 更改 261395028 对于线程 1 是按序列 # 73 进行的
ORA-00278: 此恢复不再需要日志文件 'E:\ORACLELOG\ARC00072.001'
ORA-00279: 更改 261397073 (在 05/10/2004 14:41:28 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLELOG\ARC00074.001
ORA-00280: 更改 261397073 对于线程 1 是按序列 # 74 进行的
ORA-00278: 此恢复不再需要日志文件 'E:\ORACLELOG\ARC00073.001'
ORA-00279: 更改 261399138 (在 05/10/2004 14:41:37 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLELOG\ARC00075.001
ORA-00280: 更改 261399138 对于线程 1 是按序列 # 75 进行的
ORA-00278: 此恢复不再需要日志文件 'E:\ORACLELOG\ARC00074.001'
ORA-00308: 无法打开存档日志 'E:\ORACLELOG\ARC00075.001'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。
SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 261399138 (在 05/10/2004 14:41:37 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLELOG\ARC00075.001
ORA-00280: 更改 261399138 对于线程 1 是按序列 # 75 进行的
指定日志: {
E:\ORACLELOG\redo03.log
给错了在线日志
ORA-00308: 无法打开存档日志 'E:\ORACLELOG\redo03.log'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。
指定日志: {
D:\oracle\oradata\redo03.log
这回给对了在线日志
已应用的日志。
完成介质恢复。
SQL> alter database open resetlogs;
数据库已更改。
SQL> connect scott/tiger
已连接。
SQL> select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
BAIDU TABLE
BONUS TABLE
CATT TABLE
DEPT TABLE
EMP TABLE
MCGROUP TABLE
SALGRADE TABLE
TABS1 TABLE
z200001 TABLE
z200002 TABLE
z200003 TABLE
已选择11行。
SQL>
总共有11个表,3个表被回复了
BITI说的是对的,USING BACKUP CONTROLFILE 确实会自动寻找
归档日志来回复,即便此时的数据库是“完整,可打开”的!
注意最后一个日志要使用在线日志来回复。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/386081/viewspace-219169/ ,如需转载,请注明出处,否则将追究法律责任。