归档模式下无备份数据文件损坏的完全恢复-2
2013-10-07 11:30
387 查看
数据文件在无备份的情况下恢复
如果控制文件,联机重做日志文件都没有损坏,而只是数据文件损坏,并且没有备份哟,但是归档日志必须存在,则可以完全恢复。
启动实验
create tablespace test2
datafile 'D:\oracle\product\10.2.0\oradata\TEST\test2.dbf' size 50m;
create user muwei identified by muwei default tablespace test2;
grant dba to muwei;
conn muwei/muwei
create table muwei(id number, name varchar2(20));
begin
for i in 1..100 loop
insert into muwei values(i,'小牟');
end loop;
end;
/
commit;
现在我没有对该数据文件进行任何形式的备份,现在我关闭数据库,模拟删掉的数据文件
alter system flush buffer_cache; --清掉buffer cache中的数据
shutdown immediate;
然后我去把test2.dbf这个数据文件给它删了,我手动删哈,我直接点。
startup;
ORA-01157: 无法标识/锁定数据文件 8 - 请参阅 DBWR 跟踪文件
ORA-01110: 数据文件 8: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\TEST2.DBF'
现在演示如何恢复没有备份的数据文件
alter database datafile 8 offline;
alter database create datafile 'D:\oracle\product\10.2.0\oradata\TEST\test2.dbf'; --这儿特别注意哈,需要重新创建表
空间
alter database datafile 8 online;
recover datafile 8;
完成介质恢复。
alter database open;
conn muwei/muwei;
select count(*) from muwei;
COUNT(*)
---------
100
大功告成
显然这儿没有备份的介质恢复的过程就是将归档日志或者当前重做日志中的数据应用到数据文件中去,切记成功恢复的关键是启动了
数据库的归档模式,并且自该表空间创建后,所有插入的数据被重做日志或者归档日志保护,最终通过recover指令完全恢复。。
如果控制文件,联机重做日志文件都没有损坏,而只是数据文件损坏,并且没有备份哟,但是归档日志必须存在,则可以完全恢复。
启动实验
create tablespace test2
datafile 'D:\oracle\product\10.2.0\oradata\TEST\test2.dbf' size 50m;
create user muwei identified by muwei default tablespace test2;
grant dba to muwei;
conn muwei/muwei
create table muwei(id number, name varchar2(20));
begin
for i in 1..100 loop
insert into muwei values(i,'小牟');
end loop;
end;
/
commit;
现在我没有对该数据文件进行任何形式的备份,现在我关闭数据库,模拟删掉的数据文件
alter system flush buffer_cache; --清掉buffer cache中的数据
shutdown immediate;
然后我去把test2.dbf这个数据文件给它删了,我手动删哈,我直接点。
startup;
ORA-01157: 无法标识/锁定数据文件 8 - 请参阅 DBWR 跟踪文件
ORA-01110: 数据文件 8: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\TEST2.DBF'
现在演示如何恢复没有备份的数据文件
alter database datafile 8 offline;
alter database create datafile 'D:\oracle\product\10.2.0\oradata\TEST\test2.dbf'; --这儿特别注意哈,需要重新创建表
空间
alter database datafile 8 online;
recover datafile 8;
完成介质恢复。
alter database open;
conn muwei/muwei;
select count(*) from muwei;
COUNT(*)
---------
100
大功告成
显然这儿没有备份的介质恢复的过程就是将归档日志或者当前重做日志中的数据应用到数据文件中去,切记成功恢复的关键是启动了
数据库的归档模式,并且自该表空间创建后,所有插入的数据被重做日志或者归档日志保护,最终通过recover指令完全恢复。。
相关文章推荐
- 归档模式下有备份数据文件损坏的完全恢复-1
- RMAN数据库恢复 之归档模式有(无)备份-丢失数据文件的恢复
- 用备份控制文件做不完全恢复下的完全恢复(数据文件备份<旧>--新建表空间--控制文件备份<次新>--日志归档文件<新>)
- 用备份控制文件做不完全恢复下的完全恢复(数据文件备份<旧>--新建表空间--控制文件备份<次新>--日志归档文件<新>)
- 无备份有完全归档日志情况下恢复数据文件
- 归档模式下,恢复没有备份的数据文件
- rman实验之归档模式无备份,正常关机丢失数据文件的恢复
- 一个归档模式无备份丢失数据文件的恢复
- 当前控制文件损坏_不完全恢复_用控制文件二进制备份_数据不丢_不需备份
- 归档模式下恢复没有备份的数据文件
- ARCHIVELOG模式下用户管理的完全恢复(4)——在没有数据文件备份的情况下恢复数据文件!
- rman实验之归档模式有备份,正常关机丢失数据文件的恢复
- 无备份有完全归档日志情况下恢复数据文件
- ORACLE基础学习-RMAN应用之(归档模式无备份,丢失数据文件的恢复)
- 在归档模式下有备份,丢失数据文件的恢复
- ORACLE基础学习-RMAN应用--归档模式有备份,丢失数据文件恢复
- oracle数据恢复案例 - 控制文件损坏,无备份
- 归档模式下的手工备份及完全恢复
- 没有备份、只有归档日志,如何恢复数据文件?
- 拥有所有归档文件,但没有备份情况下的数据文件恢复