Oracle解决索引碎片功能

Posted H.U.C-王子

tags:

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

我们开始时向一个空的带索引的表中插入大量数据后,是不会产生碎片问题的,但是,数据库经过很长一段时间的增删改查后,难免会出现碎片问题,影响数据库的性能,Oracle对于这一问题有自己的解决方案。

下面介绍解决这一问题的方案:

首先要对索引进行分析:analyze index ind_1 validate structure;  ind_1为你自己建立的索引

分析后查询几个主要的参数判断是否需要整理碎片:select name,HEIGHT,PCT_USED,DEL_LF_ROWS/LF_ROWS from index_stats;

这里主要通过几个标准来判断是否需要整理碎片:

1.HEIGHT>=4

2.PCT_USED<50%

3.DEL_ROWS/LF_ROWS>0.2

如果查询到的值符合以上三种情况的任意一种,就说明我们需要进行碎片整理工作了

碎片整理语句:alter index ind_1 rebuild [online] [tablespace name];

一般情况下都是要加上online参数的,不必加tablespace name。

以上就是对Oracle解决索引碎片功能的理解。

以上是关于Oracle解决索引碎片功能的主要内容,如果未能解决你的问题,请参考以下文章

ORACLE左连接索引失效,怎么解决

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

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

oracle中重建索引

Oracle11G_索引

oracle--索引