Oracle收缩表,释放占用的存储空间(shrink space)


Oracle收缩表,释放占用的存储空间(shrink space)

一、开启表的行移动功能(enable row movement)

上SQL:

alter table BIG_TABLE enable row movement;

二、收缩表(shrink space cascade)

收缩表(shrink space cascade),整理碎片,降低高水位。
上SQL:

alter table BIG_TABLE shrink space cascade;

三、关闭表的行移动功能(disable row movement)

上SQL:

alter table BIG_TABLE disable row movement;

四、知识点延伸

4.1、查索引是否失效的SQL

SELECT index_name
      ,tablespace_name
      ,status
      ,visibility
  FROM dba_indexes
 WHERE table_name = 'BIG_TABLE';

在这里插入图片描述

4.2、收缩表(shrink space cascade)不用使索引失效,不用重建索引。

4.3、使用move命令整理碎片,会使索引失效,需要rebuild 索引。

alter table BIG_TABLE move;

在这里插入图片描述

4.3.1、重建索引

alter index BIG_TABLE_PK rebuild;

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/tttzzzqqq2018/article/details/132255547