ORA-29857: domain indexes and/or secondary objects
2015-12-25 00:00
489 查看
摘要: ORA-29857: domain indexes and/or secondary objects exist in the tablespace
dmp导入的时候出了问题,想把表空间和用户删除重建,然后再重新导入,却在删除表空间时报错:
看样子是域索引或者是还有其他用户引用了这个表空间的原因,首先检查一下域索引,用要表空间所属用户登录,执行语句:
查出所有的当前表空间的域索引,将这些域索引删除之后便可继续drop表空间,但是在删除其中一个索引的时候报错:
看样子这个就是导入时报错的地方,导致这个索引仍旧处在读取的状态,执行强制删除语句:
如果这样还不行,就重启数据库后再强制删除,然后再使用DROP语句删除表空间重建即可。
上述是域索引导致删除报错的问题,如果是表空间同时被其他用户引用了的话,可以通过下面语句查出:
如果有其他用户的话,可以将其他用户的表空间改为其他或删除用户,这样就可以继续执行表空间的删除和重建了
dmp导入的时候出了问题,想把表空间和用户删除重建,然后再重新导入,却在删除表空间时报错:
> ORA-29857: domain indexes and/or secondary objects exist in the tablespace
看样子是域索引或者是还有其他用户引用了这个表空间的原因,首先检查一下域索引,用要表空间所属用户登录,执行语句:
> select index_name, table_owner, table_name, tablespace_name from user_indexes where index_type='DOMAIN';
查出所有的当前表空间的域索引,将这些域索引删除之后便可继续drop表空间,但是在删除其中一个索引的时候报错:
> ORA-29868: cannot issue DDL on a domain index marked as LOADING
看样子这个就是导入时报错的地方,导致这个索引仍旧处在读取的状态,执行强制删除语句:
> DROP INDEX <index_name> FROCE;
如果这样还不行,就重启数据库后再强制删除,然后再使用DROP语句删除表空间重建即可。
上述是域索引导致删除报错的问题,如果是表空间同时被其他用户引用了的话,可以通过下面语句查出:
> select distinct owner from dba_tables where tablespace_name='<tablespace_name>'
如果有其他用户的话,可以将其他用户的表空间改为其他或删除用户,这样就可以继续执行表空间的删除和重建了
相关文章推荐
- 提取oralce当天的alert log的shell脚本代码
- RMAN 还原与恢复
- ODT .NET 详解之 SqlDataSource 访问 Oracle
- 通过 Reflector 工具来查看 ODP.NET 提供的类等信息
- ODP.NET 之访问 Oracle 数据库
- Oracle 中使用 ObjectDataSource 读取强类型 DataSet 数据集
- Oracle 中实现 Membership 机制
- Oracle 11g实时SQL监控 --好东西不该藏着
- Shared Pool(Conceptes)
- Oracle用户管理
- 【Unified Auditing】统一审计的存储架构体系
- SSH开源自动生成代码工具,可自动生成action、service、form、dao、model、vo、sqlmap.xml、.hbm.xml、test等
- Oracle的锁表与解锁
- ORACLE批量绑定FORALL与BULK COLLECT
- Oracle 模式对象
- 《收获,不止oralce》读书笔记(4)
- oracle表空间使用率统计查询
- ORACLE触发器详解
- spring+hibernate工程使用JNDI连接部署至websphere,报错Caused by: java.lang.ClassNotFoundException: oracle.sql.BLO
- ORACLE分析函数(4)---FIRST/LAST排名查询