在我们详细介绍之前,我们必须说清楚一点:Oracle不提供如删除表、视图一样删除数据文件的方法,数据文件是表空间的一部分,所以不能“移走”表空间。
?
一、使用offline数据文件的方法
非归档模式使用:alter database datafile '...' offline drop;
归档模式使用:? alter database datafile '...' offline;
说明:
<!--[if !supportLists]-->1)???????? <!--[endif]-->以上命令只是将该数据文件OFFLINE,而不是在数据库中删除数据文件。该数据文件的信息在控制文件种仍存在。查询v$datafile,仍显示该文件。
<!--[if !supportLists]-->2)???????? <!--[endif]-->归档模式下offline和offline drop效果是一样的
<!--[if !supportLists]-->3)???????? <!--[endif]-->offline后,存在此datafile上的对象将不能访问
<!--[if !supportLists]-->4)???????? <!--[endif]-->noarchivelog模式下,只要online redo日志没有被重写,可以对这个文件recover后进行online操作
?
实际使用案例: