【ORACLE】删除表空间,没有删除数据文件怎么办?解决办法

创建表空间


SQL> create tablespace TEST datafile='+DATA/rac/datafile/test01.dbf' size 1g;


Tablespace created.


删除表空间:

SQL> drop tablespace test;


Tablespace dropped.


结果发现再次创建的时候出现问题:



SQL> create tablespace TESTdatafile '+DATA/rac/datafile/test01.dbf' size 1g;
create tablespace TEST datafile '+DATA/rac/datafile/test01.dbf' size 1g
*
ERROR at line 1:
ORA-01119: error in creating database file
'+DATA/rac/datafile/test01.dbf''
ORA-17502: ksfdcre:4 Failed to create file
+DATA/rac/datafile/test01.dbf
ORA-15005: name "rac/datafile/test01.dbf" is already used by an
existing alias


提示已经存在数据文件

有一个快速解决的方法就是在创建一个别的表空间数据文件,但这样os上的数据文件没有删除,还在占用空间


所以需要将原来的test01.dbf这文件删除掉或者重新利用


但是登录asmcmd后,rm这个文件报错,提示oracle正在使用,无法删除,这就很尴尬了,查找后发现是oracle的bug,关掉数据库后才能删除!不能因为这一个表空间的数据文件把库关里呀。所以有最合理的办法:

办法如下:


再次利用该数据文件



SQL> create tablespace TEST datafile '+DATA/rac/datafile/test01.dbf' ;

Tablespace created.

之后再删除:一定要加参数

SQL> drop tablespace test INCLUDING CONTENTS and datafiles;

Tablespace dropped.


这样再次查看就全部正常了!



评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值