首页  >  文章  >  数据库  >  mysql聚簇索引和非聚簇索引的区别

mysql聚簇索引和非聚簇索引的区别

王林
王林原创
2020-06-28 10:21:344555浏览

mysql聚簇索引和非聚簇索引的区别是:对于聚簇索引,表数据按顺序存储,即索引顺序和表记录物理存储顺序一致;对于非聚簇索引,表数据存储顺序与索引顺序无关。

mysql聚簇索引和非聚簇索引的区别

mysql聚簇索引和非聚簇索引的区别介绍:

(推荐教程:mysql教程

聚簇索引:

  • 表数据按顺序存储,即索引顺序和表记录物理存储顺序一致。

  • 聚簇索引 叶子节点存储数据行和B-Tree索引。

  • 在一个表中只能有一个聚簇索引,因为真实物理存储顺序只能有一种。

  • 聚簇索引是稀疏索引,数据页上一级索引存储是页指针,非行指针。

非聚簇索引:

  • 表数据存储顺序与索引顺序无关。

  • 对于非聚簇索引,叶节点包含行主键值和主键值作为指向行的“指针”,通过二级索引查找,两次B-Tree查找 InnoDB自适应哈希索引能够减少这样重复工作。

  • 非聚簇索引是密集索引,在数据页的上一级索引页它为每一个数据行存储一条记录。

以上是mysql聚簇索引和非聚簇索引的区别的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关文章

查看更多