- 最后登录
- 2022-8-22
- 在线时间
- 39 小时
- 威望
- 109
- 金钱
- 695
- 注册时间
- 2012-4-13
- 阅读权限
- 50
- 帖子
- 69
- 精华
- 0
- 积分
- 109
- UID
- 349
|
1#
发表于 2017-3-30 10:55:55
|
查看: 1753 |
回复: 0
本帖最后由 chunchun2012 于 2017-3-30 10:55 编辑
环境:AIX 6.1+oracel 10.2 64位
近期在数据库中进行表空间间的数据转移,转移完毕后,准备把空的表空间删除掉,操作如下:
SQL> drop tablespace GKNEWDB including contents;
drop tablespace GKNEWDB including contents
*
ERROR at line 1:
ORA-29857: domain indexes and/or secondary objects exist in the tablespace
首先怀疑是不是有用户的默认表空间还是GKNEWDB
SQL> select username from dba_users where default_tablespace='GKNEWDB';
no rows selected
发现没有
接下来检查GKNEWDB表空间还有哪些对象,
select owner,segment_name, segment_type from dba_segments where tablespace_name='GKDB'
1 GKDB SYS_IOT_TOP_182153 INDEX
2 GKDB SYS_IL0000260695C00016$$ LOBINDEX
3 GKDB SYS_IL0000260689C00020$$ LOBINDEX
4 GKDB SYS_IL0000260666C00027$$ LOBINDEX
5 GKDB SYS_LOB0000260695C00016$$ LOBSEGMENT
6 GKDB SYS_LOB0000260689C00020$$ LOBSEGMENT
7 GKDB SYS_LOB0000260666C00027$$ LOBSEGMENT
发现这些对象都是以SYS开头的,有点像系统相关的,
尝试删除索引SYS_IOT_TOP_182153,结果发现没办法删掉
SQL> drop index GKDB.SYS_IOT_TOP_182153;
drop index GKDB.SYS_IOT_TOP_182153
*
ERROR at line 1:
ORA-02429: cannot drop index used for enforcement of unique/primary key
请问为什么GKNEWDB表空间无法删除,怎么才能顺利删掉?占用的空间无法释放掉好浪费 |
|