降低高水位方法

第一种方法alter table table_name shrink space

弊端:会导致行rowid改变

优点:能够释放delete删除的空间

select * from user_segments t where t.segment_name=upper('thd_stkstockindtl');
alter table thd_stkstockindtl enable row movement;
alter table thd_stkstockindtl shrink space;
select * from user_segments t where t.segment_name=upper('thd_stkstockindtl');

会减少byte和block数量

1、数据重组(compact):通过一系列insert、delete操作,将数据尽量排列在段的前面。在这个过程中需要在表上加RX锁,即只在需要移动的行上加锁。由于涉及到rowid的改变,需要enable row movement.同时要disable基于rowid的trigger.这一过程对业务影响比较小。

2、HWM调整:第二阶段是调整HWM位置,释放空闲数据块。此过程需要在表上加X锁,会造成表上的所有DML语句阻塞。在业务特别繁忙的系统上可能造成比较大的影响。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  <table_name>  shrink space [  <null>  | compact | cascade ]; alter table  <table_name>  shrink space compcat;

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

alter table <tablespace_name> Shrink Space;

收缩表,降低 high water mark;

alter table <tablespace_name> Shrink Space cascade;

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

alter index idxname Shrink Space;

alter table xxx shrink space 高水位上下合并碎片,降低高水位 改变rowid
alter table xxx shrink space compact  高水位下合并碎片,不移动高水位 改变rowid
alter table xxx shrink space cascade  高水位上下合并碎片,降低高水位,相关索引也要收缩一下下 改变rowid

第二种:

复制表create table t as select * from dest_tableName ; 

删除表:drop tabledest_tableName purge ;

重新命名:alter table t rename to dest_tableName;

第三种:

exp导出表和该表数据,然后删除表,再imp倒入数据

第四种:

删除数据:truncate table table_name;

第五种:

alter index SYS_C0073003 rebuild online nologging; 对索引进行处理;

第六种:

alter table xxx move    高水位以下合并碎片,不移动高水位
alter table xxx move compress    高水位以下合并碎片,不移动高水位, 同时压缩表

alter table xxx shrink space


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值