oracle数据文件不小心被删除,导致对应的表空间删不掉的处理方法

问题现象:
数据文件被无意删除,导致数据库表空间无法删除,并且重新刷表空间提示表空间已经存在;
解决方法:
1、oracle用户登录服务器,使用sysdba连接数据库

>sqlplus / as sysdba

2、加载启动数据库

sql> startup mount;

3、将表空间下创建的数据文件全部删除;
比如表空间TEST_DAT,创建了两个数据文件‘/opt/oracle/oradata/TESTDB01.dbf‘ 和‘/opt/oracle/oradata/TESTDB02.dbf‘,其中TESTDB01.dbf已被删除

执行如下命令删除剩余的数据文件TESTDB02.dbf‘:

sql>alter database datafile ‘/opt/oracle/oradata/TESTDB02.dbf‘ offline drop;
4、打开数据库
sql> alter database open;   
5、清除相应的tablespace
sql>alter  tablespace   TEST_DAT offline;
sql>drop tablespace TEST_DAT including contents and datafiles;

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。