li
  当前位置:主页 > 备份恢复 > 文章内容
li
恢复之利用RESETLOGS之前的备份进行恢复(三)
来源: http://yangtingkun.itpub.net/  作者: yangtingkun    时间:2008-01-26   阅读:12  

一般情况下,是无法利用RESETLOGS操作之前的备份进行数据库的恢复的。但是在特定条件下利用RESETLOGS之前的备份进行恢复是可行的。

本文继续上一篇文章的讨论。由于利用RESETLOGS前的备份进行恢复是需要RESETLOGS操作以后的控制文件的,本文讨论在丢失控制文件时,利用RESETLOGS后备份的控制文件进行进行数据库的恢复。


前面的步骤和上篇文章完全一样,首先是构造出需要使用的RESETLOGS前的数据库备份。这里就不再重复描述。

SQL> ALTER DATABASE BACKUP CONTROLFILE TO 'F:ORACLEBACKUPTEST20060311CONTROL01.CTL';

数据库已更改。

SQL> SHUTDOWN ABORT
ORACLE 例程已经关闭。
SQL> HOST COPY F:ORACLEBACKUPTEST_BEF_RESETLOGS* F:ORACLEORADATATEST

SQL> HOST COPY F:ORACLEBACKUPTEST20060311*.CTL F:ORACLEORADATATEST

SQL> HOST COPY F:ORACLEORADATATESTCONTROL01.CTL F:ORACLEORADATATESTCONTROL02.CTL

SQL> HOST COPY F:ORACLEORADATATESTCONTROL01.CTL F:ORACLEORADATATESTCONTROL03.CTL

首先备份了当前的控制文件,然后模仿数据库崩溃,丢失所有数据文件和控制文件。于是利用RESETLOGS前备份的数据文件和RESETLOGS后备份的控制文件进行恢复。

SQL> STARTUP MOUNT
ORACLE 例程已经启动。

Total System Global Area 76619308 bytes
Fixed Size 454188 bytes
Variable Size 50331648 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
SQL> RECOVER DATABASE USING BACKUP CONTROLFILE
ORA-00279: 更改 46427582 (在 03/10/2006 23:33:18 生成) 对于线程 1 是必需的
ORA-00289: 建议: F:ORACLEORADATATESTARCHIVEARC00001.001
ORA-00280: 更改 46427582 对于线程 1 是按序列 # 1 进行的


指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
AUTO
ORA-00279: 更改 46427774 (在 03/10/2006 23:35:35 生成) 对于线程 1 是必需的
ORA-00289: 建议: F:ORACLEORADATATESTARCHIVEARC00002.001
ORA-00280: 更改 46427774 对于线程 1 是按序列 # 2 进行的
ORA-00278: 此恢复不再需要日志文件 'F:ORACLEORADATATESTARCHIVEARC00001.001'


ORA-00279: 更改 46427790 (在 03/10/2006 23:35:53 生成) 对于线程 1 是必需的
ORA-00289: 建议: F:ORACLEORADATATESTARCHIVEARC00003.001
ORA-00280: 更改 46427790 对于线程 1 是按序列 # 3 进行的
ORA-00278: 此恢复不再需要日志文件 'F:ORACLEORADATATESTARCHIVEARC00002.001'


ORA-00279: 更改 46448728 (在 03/11/2006 09:40:43 生成) 对于线程 1 是必需的
ORA-00289: 建议: F:ORACLEORADATATESTARCHIVEARC00004.001
ORA-00280: 更改 46448728 对于线程 1 是按序列 # 4 进行的
ORA-00278: 此恢复不再需要日志文件 'F:ORACLEORADATATESTARCHIVEARC00003.001'


ORA-00328: 归档日志在更改 46075117 结束,需要稍后的更改 46448728
IXDBA.NET社区论坛
ORA-00334: 归档日志: 'F:ORACLEORADATATESTARCHIVEARC00004.001'


SQL> RECOVER DATABASE USING BACKUP CONTROLFILE
ORA-00279: 更改 46448728 (在 03/11/2006 09:40:43 生成) 对于线程 1 是必需的
ORA-00289: 建议: F:ORACLEORADATATESTARCHIVEARC00004.001
ORA-00280: 更改 46448728 对于线程 1 是按序列 # 4 进行的


指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
F:ORACLEORADATATESTREDO02.LOG
已应用的日志。
完成介质恢复。
SQL> ALTER DATABASE OPEN RESETLOGS;

数据库已更改。

SQL> SELECT COUNT(*) FROM YANGTK.TEST_BACKUP;

COUNT(*)
----------
1

其实上面的步骤和上一篇文章后面介绍的差不多,需要注意的是在RECOVER DATABASE时指定USING BACKUP CONTROLFILE,且恢复过程中需要将恢复使用REDO.LOG名称提供给ORACLE,并且最后使用RESETLOGS方式打开。




  上一篇: 恢复之利用RESETLOGS之前的备份进...   下一篇: 恢复之不可恢复操作后的恢复(二...
li
 §相关评论  
 热点文章

·Oracle数据库远程复制与异地容
·Oracle 11g备份恢复功能增强
·UNDO表空间的ORA-1122错误解决
·UNDO表空间的ORA-1122错误解决
·UNDO表空间的ORA-1122错误解决
·使用Flashback Query 恢复误删
·如何开启/关闭oracle的归档
·Rman的format格式中的%s类似的
·怎么样创建RMAN恢复目录
·ORA-01843:无效的月份,这个是
·ORA-01843:无效的月份
li
 编辑推荐
·Oracle数据库远程复制与异地容
·Oracle 11g备份恢复功能增强
·UNDO表空间的ORA-1122错误解决
·UNDO表空间的ORA-1122错误解决
·UNDO表空间的ORA-1122错误解决
·使用Flashback Query 恢复误删
·如何开启/关闭oracle的归档
·Rman的format格式中的%s类似的
·怎么样创建RMAN恢复目录
·ORA-01843:无效的月份,这个是
·ORA-01843:无效的月份
li
 相关篇章
·恢复之利用RESETLOGS之前的备份进...
·恢复之使用非当前控制文件恢复只...
·恢复之恢复操作的中断
·恢复之不可恢复操作后的恢复(一...
·恢复之不可恢复操作后的恢复(三...
·恢复之使用非当前控制文件恢复只...
·恢复过程中的ORA-1113错误
·恢复之使用非当前控制文件恢复只...
·恢复之缺失归档日志文件
·恢复之归档日志文件破损(一)
·恢复之不可恢复操作后的恢复(二...
·恢复之利用RESETLOGS之前的备份进...
·恢复之利用RESETLOGS之前的备份进...
·恢复之数据字典和控制文件不一致...
·恢复之非归档模式恢复到其他位置
·恢复之数据字典和控制文件不一致...
·恢复之非归档模式下的恢复
·恢复之基于改变的不完整恢复
·恢复之基于取消的不完整恢复
·恢复之非归档模式下数据库非正常...
 
li
设为首页 | 关于我们 | 技术服务 | 收藏本站 | 网站地图 | 联系方式 | 本站友情连接