美文网首页
Oracle为什么要重建索引?

Oracle为什么要重建索引?

作者: GuangHui | 来源:发表于2018-08-14 15:16 被阅读29次

当我们创建索引时,oracle会为索引创建索引树,表和索引树通过rowid(伪列)来定位数据.
当表里的数据发生更新时,oracle会自动维护索引树.但是在索引树中没有更新操作,只有删除和插入操作。

例如在某表id列上创建索引,某表id列上有值“101”,当我将“101”更新为“110”时,oracle同时会来更新索引树,但是oracle先将索引树中的“101”标示为删除(实际并未删除,只是标示一下),然后再将“110”写到索引树中.

如果表更新比较频繁,那么在索引中删除标示会越来越多,这时索引的查询效率必然降低,所以我们应该定期重建索引来消除索引中这些删除标记.

一般不会选择先删除索引,然后再重新创建索引,而是rebuild索引.在rebuild期间,用户还可以使用原来的索引,并且rebuild新的索引时也会利用原来的索引信息,这样重建索引会块一些.

相关文章

  • Oracle为什么要重建索引?

    当我们创建索引时,oracle会为索引创建索引树,表和索引树通过rowid(伪列)来定位数据.当表里的数据发生更新...

  • Oracle 索引学习

    创建索引 标准语法 唯一索引 组合索引 反向键索引 示例 删除索引 修改索引 重建索引 联机重建索引 合并索引

  • oracle 常用指令

    oracle常用指令 表空间查询 查询表空间中对象的详细信息 重建索引 创建表空间 查询表文件是否自动扩展 优化表...

  • Mac spotlight无法搜索的解决方法

    今天突然发现spotlight搜东西没反应了,网上查找解决方案都说是要重建索引,于是按下面的方法重建索引: 将Ma...

  • oracle数据库之索引书目录

    oracle数据库之索引 oracle数据库之创建一个索引(Creating an Index Explicitl...

  • [SQL]ORACLE的强制索引的方法

    ORACLE的强制索引 在一些场景下,可能ORACLE不会自动走索引,这时候,如果对业务清晰,可以尝试使用强制索引...

  • oracle索引

    索引 索引保存置指定条件的ROWID, 表的索引索引信息-- USER_INDEXES索引列-- DBA_IND_...

  • Oracle索引

    始于喜欢,终于太喜欢索引

  • Oracle 索引

    1. 创建索引 2. 删除索引 3. 创建组合索引 4.查询索引 oracle中表的索引信息存在 user_ind...

  • Oracle索引

    索引具有两个功能:强制实施主键约束和唯一约束、提高性能。 索引的必要性: 主键和具有唯一性约束的列都会自动...

网友评论

      本文标题:Oracle为什么要重建索引?

      本文链接:https://www.haomeiwen.com/subject/psrvbftx.html