刚刚做过实验,在数据库打开状态下,offline数据文件要对取进行recover操作才能online回来,也即是要进行恢复才能重新online,
1.首先对这个数据文件进行offline
alter database datafile 6 offline;
2.进行online
alter database datafile 6 online
提示需要进行恢复,在后台日志中也出现了错误提示
alter database datafile 6 offline
Wed May 2 18:05:14 2012
Completed: alter database datafile 6 offline
Wed May 2 18:06:10 2012
alter database datafile 6 online
Wed May 2 18:06:10 2012
ORA-1113 signalled during: alter database datafile 6 online...
出现了1113错误
可以在系统中查下这个这个错误以及解决方法
$ oerr ORA 1113
01113, 00000, "file %s needs media recovery"
// *Cause: An attempt was made to online or open a database with a file that
// is in need of media recovery.
// *Action: First apply media recovery to the file.
$
这是查找问题的一种方法,记录下。
看看控制文件里面的数据文件状态
select file#,status,checkpoint_change#,name from v$datafile;
再看看数据文件里面的状态
select file#,status,checkpoint_change#,name from v$datafile_header;
需要说明的是,offline的文件scn号是不会改变的。
3.进行恢复
SQL> recover datafile 6;
完成介质恢复。
再把数据文件online
SQL> alter database datafile 6 online;
数据库已更改。