MySQL聚簇索引

2021-08-19 14:18:06 字數 610 閱讀 3415

正確地建立和使用索引是實現高效能查詢的基礎。本文簡要介紹mysql聚簇索引。

聚簇索引不是一種單獨的索引型別,而是一種資料儲存方式。

在innodb中的聚簇索引實際上是在同乙個結構中儲存了b-tree索引和資料行。

當表有聚簇索引時,它的資料實際上存放在索引的葉子節點中。「聚簇」表示資料行和相鄰的鍵值緊湊地儲存在一起。因為無法同時把資料行存放在兩個不同的地方,所以乙個表只能有乙個聚簇索引。innodb通過主鍵聚集資料。如果沒有定義主鍵,innodb會選擇乙個唯一的非空索引作為聚簇索引。如果沒有這樣的索引,innodb會隱式定義乙個主鍵來作為聚簇索引。

聚簇索引的優點:

如果在設計表和查詢時能夠充分利用聚簇索引的優點,就可以極大地提公升效能。但聚簇索引也有一些缺點:

從聚簇索引的缺點可知,如果innodb表插入是亂序的,innodb就會頻繁地做頁**操作,以便為新的行分配空間。頁**會導致移動大量資料,並會產生資料碎片。因此,使用innodb時應盡可能地按主鍵順序插入資料。

innodb儲存資料和索引抽象圖如下所示:

mysql 聚簇索引例項 MySQL聚簇索引

mysql作為迭代了很多個版本的資料庫。在資料庫的索引上實現了很多的優化版本,從一開始的只允許乙個表有乙個列為索引值,到目前版本可支援多個列建立索引值,更多關於索引優化版本的描述,以後有機會筆者再寫一篇文章。本文主要介紹索引當中的聚簇索引。mysql官方對聚簇索引的定義是,聚簇索引並不是一種單獨的索...

mysql聚簇索引設定 Mysql 聚簇索引

整體概述 1.innodb的主索引檔案上 直接存放該行資料,稱為聚簇索引,次索引指向對主鍵的引用 2.myisam中,主索引和次索引,都指向物理行 磁碟位置 哈哈,說了兩句貌似聽不懂的話。一。通俗解釋 我們可以這麼理解 聚簇索引 innodb 索引的葉節點就是資料節點,下邊實打實有資料。非聚簇索引 ...

mysql 聚簇索引表 Mysql的聚簇索引

聚簇索引並不是一種單獨的索引型別,而是一種資料儲存方式。innodb的聚簇索引實際上是在同乙個結構中儲存了b tree索引和資料行。乙個表只能有乙個聚簇索引。innodb中,葉子頁包含了行的全部資料,但是節點頁只包含了索引列。innodb通過主鍵聚集資料。優點 1.可以把相關資料儲存在一起。例如實現...