恢复案例:归档模式下丢失非系统表空间数据文件的恢复

             恢复案例:归档模式下丢失非系统表空间数据文件的恢复
1、创建测试表、归档日志并关闭数据库:
SQL> create table t(a int) tablespace xue;
SQL> insert into  t values(1);
SQL> commit;
SQL> alter system switch logfile;
SQL> shutdown immediate[@more@]

2、模拟数据文件丢失:删除两个非系统数据文件:
SQL> host del d:oracleoradataxuexue01.dbf
SQL> host del d:oracleoradataxueusers01.dbf
3、启动数据库,报错:
SQL> startup
ORACLE 例程已经启动。
Total System Global Area   24680476 bytes
Fixed Size                    75804 bytes
Variable Size               7749632 bytes
Database Buffers           16777216 bytes
Redo Buffers                  77824 bytes
数据库装载完毕。
ORA-01157: ????/?????? 3 - ??? DBWR ????
ORA-01110: ???? 3: 'D:ORACLEORADATAXUEUSERS01.DBF'
4、查看恢复文件状态:
SQL> select * from v$recover_file;
     FILE# ONLINE  ERROR                   CHANGE# TIME
---------- ------- -------------------- ---------- ----------
         3 ONLINE  FILE NOT FOUND                0
         6 ONLINE  FILE NOT FOUND                0
5、将损坏的数据文件脱机并打开数据库:
SQL> alter database datafile 3 offline;
SQL> alter database datafile 6 offline;
SQL> alter database open;
数据库已更改。
6、拷贝热备的数据文件,对丢失的数据文件进行复原:
SQL> host copy f:dbusers01.dbf d:oracleoradataxue
SQL> host copy f:dbxue01.dbf d:oracleoradataxue
可以看到数据文件已还原:
SQL> select * from v$recover_file;

     FILE# ONLINE  ERROR                   CHANGE# TIME
---------- ------- -------------------- ---------- ----------
         3 OFFLINE                         2024404 25-7?  -04
         6 OFFLINE                         2024410 25-7?  -04
7、对丢失的数据文件进行恢复:
SQL> recover datafile 3
ORA-00279: ?? 2024404 (? 07/25/2004 16:04:43 ??) ???? 1 ????
ORA-00289: ??: D:ORACLEORADATAXUEARCHIVEXUET001S00006.ARC
ORA-00280: ?? 2024404 ???? 1 ???? # 6 ???
指定日志: {=suggested | filename | AUTO | CANCEL}
auto
已应用的日志。
完成介质恢复。
SQL> recover datafile 6
ORA-00279: ?? 2024410 (? 07/25/2004 16:05:04 ??) ???? 1
ORA-00289: ??: D:ORACLEORADATAXUEARCHIVEXUET001S00
ORA-00280: ?? 2024410 ???? 1 ???? # 6 ???
指定日志: {=suggested | filename | AUTO | CANCEL}
auto
已应用的日志。
完成介质恢复。
8、将脱机的数据文件联机,验证恢复:
SQL> alter database datafile 3 online;
SQL> alter database datafile 6 online;
SQL> select * from t;

         A
----------
         1

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/60857/viewspace-786310/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/60857/viewspace-786310/

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值