Rumah  >  Artikel  >  pangkalan data  >  mysql聚簇索引和非聚簇索引的区别

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

王林
王林asal
2020-06-28 10:21:344576semak imbas

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

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

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

(推荐教程:mysql教程

聚簇索引:

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

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

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

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

非聚簇索引:

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

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

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

Atas ialah kandungan terperinci mysql聚簇索引和非聚簇索引的区别. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:mysql常见索引类型有哪些Artikel seterusnya:mysql中什么是聚簇索引