数据文件坏删除数据文件

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

没有简单的方法来删除表空间的数据文件,唯一的方法是删除整个定义的表空间,步骤有下面(前提是这个数据文件上的数据是不需要了):

如果数据库运行在非归档模式:

1. MOUNT数据库 - startup mount

2. 删除数据文件 - alter database datafile xxx offline drop

3. 打开(OPEN)数据库 - alter database open

4. 查看属于该表空间的所有对象:

select owner, segment_name, segment_type

from dba_segments

where tablespace_name='tbs_name'

5. 导出该表空间的所有对象------用exp命令来做

6. 删除表空间 - drop tablespace tbs_name including contents

7. 删除这个表空间的所有物理的数据文件Delete the physical datafiles belonging to the tablespace

8. 重建表空间,导入前面导出的DMP文件.

如果数据库是运行在归档模式:

1. MOUNT数据库 - startup mount

2. 删除数据文件 - alter database datafile xxx offline

(Note: offline这个数据文件,此数据文件还是属于这个数据库的一部分,只是在控制文件中将它的状态标记为offline.)

3. 在操作系统一级删除物理的数据文件

4. 打开(OPEN)数据库 - alter database open

5. 后面的可以做下面操作:

导出该表空间的对象

删除表空间

重建表空间并导入对象

如果数据库运行在归档模式下,并且数据文件有备份:

1.MOUNT数据库

2.OFFLINE数据文件:alter database datafile xxx offline;

3.将备份的数据文件拷贝到原来数据文件的位置.

4.将备份数据文件到目前的所有归档日志放到归档目录.

5.恢复数据文件:recover automatic datafile xxx(要输入全路径名)

6.然后ONLINE数据文件:alter database datafile xxx online;

7.打开(OPEN)数据库:alter database open;

8.做一次数据库的关机全备份.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有  導航