首页 > 代码库 > ORA-10635: Invalid segment or tablespace type
ORA-10635: Invalid segment or tablespace type
对DML频繁的表执行shrink操作时报 ORA-10635: Invalid segment or tablespace type 操作系统版本: $ oslevel -s 5300-07-01-0748 数据库版本 : SQL> select * from v$version; BANNER ---------------------------------------------------------------- Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - 64bi PL/SQL Release 10.1.0.2.0 - Production CORE 10.1.0.2.0 Production TNS for IBM/AIX RISC System/6000: Version 10.1.0.2.0 - Productio NLSRTL Version 10.1.0.2.0 - Production 由于表LSKFCDYE的DELETE操作非常频繁,为了降低这批表的高水位线,执行shrink操作。 SQL> ALTER TABLE LSKFCDYE NABLE ROW MOVEMENT ; Table altered. 当执行shrink操作的时候,结果报如下错误: SQL> ALTER TABLE LSKFCDY SHRINK SPACE; alter table LSKFCDY shrink space * ERROR at line 1: ORA-10635: Invalid segment or tablespace type 从10g ORACLE开始提供Shrink的命令,但10g的这个新特性仅对ASSM表空间有效 查询LSKFCDYE所在表空间管理方式,果然是LOCAL本地管理,因此也就知道错误的原因了 SQL> SELECT TABLESPACE_NAME, EXTENT_MANAGEMENT FROM DBA_TABLESPACES WHERE TABLESPACE_NAME=‘DATAZS‘; TABLESPACE_NAME EXTENT_MAN ------------------------------ ---------- JYCQDATAZS LOCAL 导致shrink space失败的原因参见Oracle官方介绍 Shrink operations can be performed only on segments in locally managed tablespaces with automatic segment space management (ASSM). Within an ASSM tablespace, all segment types are eligible for online segment shrink except these: IOT mapping tables Tables with rowid based materialized views Tables with function-based indexes ...
本文出自 “O Record” 博客,请务必保留此出处http://evils798.blog.51cto.com/8983296/1420917
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。