微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Oracle中检查是否需要重构索引的sql

<div class="codetitle"><a style="CURSOR: pointer" data="98449" class="copybut" id="copybut98449" onclick="doCopy('code98449')"> 代码如下:

<div class="codebody" id="code98449">
SELECT
height,/Height of the B-Tree/
blocks,/ Blocks in the index segment /
name,/index name /
lf_rows,/ number of leaf rows in the index /
lf_blks,/ number of leaf blocks in the index /
del_lf_rows,/ number of deleted leaf rows in the index /
rows_per_key / average number of rows per distinct key /
blk_gets_per_access / consistent mode block reads (gets) /
FROM INDEX_STATS
WHERE NAME='INDEX_NAME';

<div class="codetitle"><a style="CURSOR: pointer" data="90163" class="copybut" id="copybut90163" onclick="doCopy('code90163')"> 代码如下:
<div class="codebody" id="code90163">
ANALYZE index INDEX_NAME VALIDATE STRUCTURE
HEIGHT:
This column refers to the height of the B-tree index,and it's usually at the 1,2,or 3 level.
If large inserts push the index height beyond a level of 4,it's time to rebuild,which flattens the B-tree. DEL_LF_ROWS:
This is the number of leaf nodes deleted due to the deletion of rows.
Oracle doesn't rebuild indexes automatically and,consequently,too many deleted leaf rows can lead to an unbalanced B-tree. BLK_GETS_PER_ACCESS:
You can look at the BLK_GETS_PER_ACCESS column to see how much logical I/O it takes to retrieve data from the index. If this row shows a double-digit number,you should probably start rebuilding the index.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐