ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ZT 用早期的冷备份和以后的归档日志是否能将数据恢复到归档日志结尾?

ZT 用早期的冷备份和以后的归档日志是否能将数据恢复到归档日志结尾?

原创 Linux操作系统 作者:zergduan 时间:2008-03-29 11:11:08 0 删除 编辑

http://www.itpub.net/viewthread.php?tid=220971&extra=page%3D1%26amp%3Bfilter%3Dtype%26amp%3Btypeid%3D2&page=1

 

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 进行的


指定日志: {=suggested | filename | AUTO | CANCEL}
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 进行的


指定日志: {=suggested | filename | AUTO | CANCEL}
E:\ORACLELOG\redo03.log

给错了在线日志

ORA-00308: 无法打开存档日志 'E:\ORACLELOG\redo03.log'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。


指定日志: {=suggested | filename | AUTO | CANCEL}
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/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-03-12

  • 博文量
    77
  • 访问量
    757962