当前位置: 代码迷 >> Oracle技术 >> Oracle冷备数据库及模拟仅部分数据文件丢失后完全恢复数据库,该如何处理
  详细解决方案

Oracle冷备数据库及模拟仅部分数据文件丢失后完全恢复数据库,该如何处理

热度:152   发布时间:2016-04-24 08:08:19.0
Oracle冷备数据库及模拟仅部分数据文件丢失后完全恢复数据库
我做的步骤如下:
1.数据库运行在非归档模式下
2.找出当前数据库的所有数据文件、控制文件、日志文件的路径和名称。
3.查询scott用户dept表中所有数据
4.做一次数据库的冷备。关闭数据库,将所有数据文件、控制文件、日志文件复制到相对安全的地方。
重新启动数据库。
5.往scott.dept表中插入2条数据,并提交(commit),每提交一条数据后,日志切换(alter system switch logfile).
6.在执行多次手动日志切换(alter system switch logfile).
7.关闭数据库。
8.模拟数据文件丢失(删除user01.dbf文件)
9.启动数据库,记录下出错的信息。
10将刚备份好的user01.dbf文件复制回去。
11.根据提示recover datafile


结果数据库崩溃了:出现了下面的问题。


SQL> recover datafile 'd:\APP\L\ORADATA\ORCL\USERS01.DBF';
ORA-00279: 更改 1169653 (在 05/26/2013 16:46:10 生成) 对于线程 1 是必需的
ORA-00289: 建议:
D:\APP\L\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_05_26\O1_MF_1_12_%U_.ARC
ORA-00280: 更改 1169653 (用于线程 1) 在序列 #12 中 


指定日志: {<RET>=suggested | filename | AUTO | CANCEL}

ORA-00308: 无法打开归档日志
'D:\APP\L\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_05_26\O1_MF_1_12_%U_.ARC'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。 


求大神指点迷津啊,我就纯属菜鸟级别,请各位大神能够仔细点的讲解。
------解决方案--------------------
非归档模式下,不行的

如果你的redo被覆盖了,非归档模式下,只能全部使用备份的文件,open库
而不能只还原一个数据文件
因为这样无法做到数据文件,控制文件,redo文件的完全一致
------解决方案--------------------
全部使用冷备的东西还原,后面的操作丢失
------解决方案--------------------
全部复制回去就好了
------解决方案--------------------
然后alert database open;

不用做任何恢复操作
如果提示恢复,不能open,证明你的冷备有问题
  相关解决方案