Oracle 索引维护

本文介绍了Oracle索引的分析,包括何时需要重建索引的标准,如何查看索引高度及其对DML性能的影响。同时,分享了如何监控和控制索引数量,以及在导入导出过程中优化索引的方法,以提高数据库效率。
摘要由CSDN通过智能技术生成

一、索引的分析

根据ORACLE文档所描述,如下情况要考虑重建索引

1. analyze index your_index_name validate structure;

2. 查询索引碎片:

select name,del_lf_rows, lf_rows, round((del_lf_rows/(lf_rows+0.0000000001))*100)

frag_pct from index_stats

一般如果该索引的frag_pct>10%,那么就需要rebuild index

当然analyze index your_index_name validate structure除了可以分析素因是否需要重建外,还可以让还能获得其他有用信息,能让了解当前索引的大小结构高度等等,以确定优化方案。还要特别留意另一个知识点:“该命令将会导致锁!”而且操作大表,该命令执行时间会相当长,会导致生产因此挂起一堆处理该表的进程!


二、索引高度

Oracle在表示从索引根块到叶子块遍历所涉及的块数时用了两个含义稍有不同的术语。第一个是高度(HEIGHT),这是指从根块到叶子块遍历所需的块数。使用ANALYZE INDEX <name> VALIDATE STRUCTURE命令分析索引后,可以从INDEX_STATS视图找到这个高度(HEIGHT)值。另一个术语是BLEVEL,这是指分支层数,与HEIGHT相差1(BLEVEL不把叶子块层算在内)。收集统计信息后,可以在诸如USER_INDEXES之类的常规字典表中找到BLEVEL值。


select index_name, blevel, num_rows from user

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值