ITPub博客

首页 > 数据库 > Oracle > shrink使用分析

shrink使用分析

原创 Oracle 作者:penglele2009 时间:2010-11-23 17:30:35 0 删除 编辑

从10g开始,oracle开始提供Shrink的命令,假如我们的表空间中支持自动段空间管理 (ASSM),就可以使用这个特性缩小段,即降低HWM。这里需要强调一点,10g的这个新特性,仅对ASSM表空间有效,否则会报 ORA-10635: Invalid segment or tablespace type。


shrink space语句两个阶段都执行。

shrink space compact只执行第一个阶段。

如果系统业务比较繁忙,可以先执行shrink space compact重组数据,然后在业务不忙的时候再执行shrink space降低HWM释放空闲数据块。

shrink必须开启行迁移功能。

alter table table_name enable row movement ;
注意:alter table XXX enable row movement语句会造成引用表XXX的对象(如存储过程、包、视图等)变为无效。执行完成后,最好执行一下utlrp.sql来编译无效的对象。

语法:

alter table shrink space [ | compact | cascade ];

alter table shrink space compcat;

收缩表,相当于把块中数据打结实了,但会保持 high water mark;

alter table shrink space;

收缩表,降低 high water mark;

alter table shrink space cascade;

收缩表,降低 high water mark,并且相关索引也要收缩一下下。

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22934571/viewspace-1041954/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-11-26

  • 博文量
    199
  • 访问量
    677249