日期:2014-05-16  浏览次数:20455 次

关于Oracle删除永久表空间
默认永久表空间的删除方法
既然是因为是“默认”的永久表空间不可以删除,我们仅需将默认的永久表空间指定到其他表空间,然后USERS表空间便可以被顺利删除。
1)将数据库系统的默认永久表空间调整到test
sys@ora10g> alter database default tablespace test;

Database altered.

2)确认调整效果
sys@ora10g> select * from database_properties where property_name='DEFAULT_PERMANENT_TABLESPACE';

PROPERTY_NAME                PROPERTY_VALUE DESCRIPTION
---------------------------- -------------- ------------------------------------
DEFAULT_PERMANENT_TABLESPACE TBS_SEC_D      Name of default permanent tablespace

3)删除原默认永久表空间USERS
sys@ora10g> drop tablespace USERS including contents and datafiles;

Tablespace dropped.

删除成功。

以上是网上找到的方法,在实际实行过程中,我把其中的test设为临时表空间,然后执行是报错的,为:默认永久表空间类型无效。不知道是不是只有我是这个问题。之后我把test删除,然后重新创建成永久形式,但是不勾选默认永久表空间。然后可以操作了。
但是还是出现了一个问题,之后这个test变成了默认永久表空间了,因为暂时没有时间,所以还没有再研究下去,不过貌似以前表空间的数据没有转移到test当中去。