【ASK_ORACLE】关于Oracle索引分裂你需要知道的

来源:这里教程网 时间:2026-03-03 17:54:31 作者:

等待事件“enq: TX - index contention”与索引分裂在执行高并发 insert(主要原因)或者delete操作时,有可能就会看到该SQL对应的索引上的的大量TX队列发生争用(RAC环境下可能所有节点都会产生)。这种问题就是由于insert了一行,索引也会跟着增加,当在索引块中找不到需要插入新行的空间时就会产生索引分裂。并且在索引完成分裂前,就会产生等待事件“enq: TX - index contention”,直到索引分裂完成。 索引分裂种类 叶节点分裂( leaf block split 枝节点分裂branch block split根节点分裂root block split)  产生索引分裂的过程1. 首先,DB划分出一个新的索引块2. 其次,按一定比例复制行到新索引块3. 最后,将新索引块添加到索引结构中  索引分裂的几种发生条件1. 大量访问的表的索引2. 先执行数据量很大的delete,然后立马又进行大批量insert3. 索引只往右边生长增长,导致增长失衡

相关推荐