代码改变世界

Oracle数据文件丢失,数据库如何打开或恢复

2018-03-07 16:39  staryea-bigdata  阅读(3345)  评论(0编辑  收藏  举报

(一)如果没有备份只能是删除这个数据文件了,会导致相应的数据丢失。
SQL>startup mount
--ARCHIVELOG模式命令
SQL>Alter database datafile 'file name' offline;
--NOARCHIVELOG模式命令
SQL>Alter database datafile 'file name' offline drop;
SQLl>Alter database open;
注意:该数据文件不能是系统数据文件

 

(二)丢失一个数据文件,没有备份但是有该数据文件创建以来的归档怎么恢复
[A]保证如下条件
a. 不能是系统数据文件
b. 不能丢失控制文件
如果满足以上条件,则
SQL>startup mount
SQL>Alter database create datafile 'file name' as 'file name' size ... reuse;
SQL>recover datafile n; -文件号
或者
SQL>recover datafile 'file name';
或者
SQL>recover database;
SQL>Alter database open;