数据库系统】 mysql数据库innodb索引

2021-02-03 18:35发布

MySQL的Innodb存储引擎的聚集索引和非聚集索引指的是什么有什么区别

MySQLInnodb存储引擎的聚集索引和非聚集索引指的是什么有什么区别


6条回答
征戰撩四汸
2022-06-08 16:49

在InnoDb中主键索引即为聚集索引,数据存储在B+树的叶子节点,索引和数据放在一起。

非聚集索引:指的是非主键索引,非主键索引叶子节点数据存储的是主键索引的ID,真实数据没有和索引放一起

二者的区别:

聚集索引非聚集索引
聚集索引更快非聚集索引较慢
聚集索引需要较少的内存来进行操作。非聚集索引需要更多的内存用于操作。
在聚簇索引中,索引是主要数据。在非聚集索引中,索引是数据的副本。
一个表只能有一个聚集索引。一个表可以有多个非聚集索引。
聚集索引具有将数据存储在磁盘上的固有能力。非聚集索引不具有将数据存储在磁盘上的固有能力。
聚集索引存储块指针不是数据指针非聚集索引存储值和指向保存数据的实际行的指针。
在聚簇索引中,叶节点是实际数据本身。在非聚集索引中,叶节点不是实际数据本身,而是仅包含包含的列。
在聚簇索引中,聚簇键定义表中数据的顺序。在非聚集索引中,索引键定义索引内数据的顺序。
聚集索引是一种索引类型,其中表记录在物理上被重新排序以匹配该索引。非聚集索引是一种特殊类型的索引,其中索引的逻辑顺序与磁盘上行的物理存储顺序不匹配。



一周热门 更多>