已索引

The session waits while a sequential read from the database is performed.

通常指索引的读取,但不绝对:

  • 有些索引读取会发生 db file scattered read 等待
  • 有时候表的读取会发生 db file sequential 等待
  • undo 的读取,会使用 db file sequential 等待

常见的原因如下:

  • 应用软件质量较高,大量SQL语句都采用了索引
  • 创建了大量无用的索引,且因为DML操作导致索引维护工作量增加
  • 频繁的 DML 操作导致索引碎片,增加了索引的IO开销
  • 部分索引设计不合理,虽然使得了索引,但是是索引扫描,类似于全表扫描

官方文档提到,该等待事件也被用于如下几种情况:

  • rebuilding the control file
  • dumping datafile headers
  • getting the database file headers

如何解决:

  • 无需解决(不可避免,正常现象)
  • 改善SQL语句的效率
  • 考虑其它方式的索引(复合索引、位图索引、全文索引)
  • 全表扫描+并行
  • 改善磁盘IO
-- By 许望(RHCA、OCM、VCP)
最后修改:2023 年 01 月 20 日 10 : 46 AM
如果觉得我的文章对你有用,请随意赞赏