ORA-01151;ORA-01537错误

在尝试创建已删除表空间的同名新表空间时遇到了ORA-01537错误。问题解决方法包括使用'DROP TABLESPACE ... INCLUDING CONTENTS AND DATAFILES'删除表空间,或者在创建表空间时使用'REUSE'选项重用数据文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

案例:

先用以下语句创建一个表空间
create tablespace ts_test datafile'/dev/rvol/oradg/vol05' size 400M;
然后再用以下语句删除表空间。
alter tablespace ts_test offline;
drop tablespace ts_test including contents;
select * from v$datafile;
之后再用以下语句创建表空间出现错误
The following error has occurred:
create tablespace ts_test datafile'/dev/rvol/oradg/vol05' size 400M;

ORA-01537: cannot add data file '/dev/rvol/oradg/vol05' - file already part of database

谁能解释下下面这句话具体什么意思?我是新手,在线等!谢谢
drop tablespace ts_test including contents and datafiles ;
or
create tablespace ts_test datafile'/dev/rvol/oradg/vol05' size 400M reuse;

drop tablespace ts_test including contents and datafiles 

表示删除表空间,并且表空间内的内容和相关的数据文件都删了
你前面没加and datafiles ,所以数据文件没删,当然无法创建同名的数据文件了,所以报了这个错误。

create tablespace ts_test datafile'/dev/rvol/oradg/vol05' size 400M reuse

reuse则表示重用这个数据文件

问题描述:

一次误删了一个用户的数据文件,是用来测试的,数据库没有做备份,表空间不能删除,左后通过想改表空间添加数据文件的方法来解决的。具体方法如下:

sql>alter database datafile '/home/oracle/datadump/usm4.dbf' offline drop;

sql>alter tablespace usm4 datafile '/home/oracle/datadump/usm5.dbf' size 400M;

问题解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值