记录一则rebuild index消除索引碎片的效果
2018-05-24 11:04 AlfredZhao 阅读(638) 评论(0) 编辑 收藏 举报背景:在一次某客户的停产维护中,有一项例行对大表rebuild索引的操作,本是按部就班的操作,其效果却出乎我的意料,大部分索引的效果前后都有4倍左右的变化,最大的那个索引前后居然差了7倍多,并且重建索引也没有用到压缩选项,这个与我之前的预期差距很大,化名记录下这个结果。
1. 重建索引
使用rebuild重建索引,因为是停产状态,无需加online选项:--rebuild index
ALTER INDEX JINGYU.IDX_XXX_1
REBUILD
NOCOMPRESS
PARALLEL 4
TABLESPACE DBS_I_JINGYU
STORAGE (INITIAL 64K);
--noparallel
alter index JINGYU.IDX_XXX_1 noparallel;
需要注意如果用到并行,结束后一定要记得取消并行度。
2.重建前后索引大小变化
比对重建前后索引的空间大小占用变化:--重建前索引空间:
select owner, segment_name, bytes/1048576 "MB" from dba_segments where segment_name like 'IDX_XXX_1';
OWNER SEGMENT_NAME MB
------------------------------ ------------------------------ ----------
JINGYU IDX_XXX_1 78749.125
--重建后索引空间:
select owner, segment_name, bytes/1048576 "MB" from dba_segments where segment_name like 'IDX_XXX_1';
OWNER SEGMENT_NAME MB
------------------------------ ------------------------------ ----------
JINGYU IDX_XXX_1 10795.4375
可以看到这个索引IDX_XXX_1从78749M变成了10795M,前后相差7倍之多,效果非常明显。其余大部分大表索引重建前后也有4倍左右的差距。
AlfredZhao©版权所有「从Oracle起航,领略精彩的IT技术。」
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步