mysql 索引原理

2023-03-11 10:38:00 浏览数 (1)

文章目录

  • 1、索引的本质
  • 2、索引的分类
    • 2.1、Hash 索引
    • 2.2、二叉树
    • 2.4、B树(二三树)
    • 2.5、B 树
  • 3、主键目录
  • 4、索引页
  • 5、索引页的分层
  • 6、非主键索引
  • 7.回表

1、索引的本质

索引的本质是一种排好序的数据结构。

2、索引的分类

在数据库中,索引是分很多种类的(千万不要狭隘的认为索引只有 B 树,那是因为我们平时使用的基本都是 MySQL)。而不同的种类很显然是为了应付不同的场合,那索引到底有那些种类呢?下面就让我们来大致的了解下。

2.1、Hash 索引

Hash 索引是比较常见的一种索引,他的单条记录查询的效率很高,时间复杂度为1。但是,Hash索引并不是最常用的数据库索引类型,尤其是我们常用的Mysql Innodb引擎就是不支持hash索引的。主要有以下原因:

Hash索引适合精确查找,但是范围查找不适合

0 人点赞