Oracle 工具类 Sql 分析索引的 碎片率

Posted liwenchaocode

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle 工具类 Sql 分析索引的 碎片率相关的知识,希望对你有一定的参考价值。

 

1、索引分析

分析语句:
SQL>analyze index <index_name> validate structure online;

分析表:
analyze table tablename compute statistics;

analyze index indexname compute statistics;

 

查看索引碎片的情况:
SQL>select name,del_lf_rows_len,lf_rows_len,(del_lf_rows_len/lf_rows_len)*100 from index_stats;
索引碎片率:(del_lf_rows_len/lf_rows_len)*100
如果索引碎片率超过20%,oracle就会认为索引碎片已经非常严重,此时就需要对索引碎片进行整理。

 

 

2、索引碎片整理
索引碎片整理包括两种策略:
(1)重建索引(rebuild)
SQL>alter index <index_name> rebuild;
(2)压缩索引(coalesce)
SQL>alter index <index_name> coalesce;

 

oracle建议定期分析之后采用重建索引(rebuild)的策略。

 











以上是关于Oracle 工具类 Sql 分析索引的 碎片率的主要内容,如果未能解决你的问题,请参考以下文章

关于Oracle表碎片整理

oracle中重建索引

Oracle11G_索引

关于SQLServer 2000 索引问题

sql索引碎片产生的原理 解决碎片的办法(sql碎片整理)

Oracle索引碎片检查及定期重建常用表的索引