mysql 索引及優化(全)

2022-09-20 06:39:09 字數 397 閱讀 5607

1. 基本概念

1. 聚簇索引,給主鍵加的索引,資料存放在索引的葉子節點中,所以資料即索引,索引即資料。每個表只能又乙個主鍵,乙個聚簇索引

2. 非聚簇索引,不是聚簇索引的索引

3. 主鍵的插入順序應該是有序插入,不然會出現葉**,嚴重影響效能,所以主鍵一般是自增,不重複,而且不可更新

4. 當乙個非聚簇索引需要查詢沒有索引的字段時,它會用主鍵去進行二次查詢聚簇索引,找到需要的字段值,這個過程稱為回表

理一下邏輯:

mysql中乙個資料頁的大小為160kb,當資料滿了,需要重新開乙個新的資料頁,在每個資料頁中,主鍵都應該是增加的(其他頁的主鍵不能出現在本頁的最大值和最小值之間)。

然後新開乙個資料頁,用來記錄每個資料頁的最小主鍵

以此類推

Mysql 索引及優化

索引是什麼?相信大家都用過字典。你是怎麼從厚厚的新華字典中找到你需要找到的那個字的呢?又是怎麼從一本書中快速定位到你需要的章節?我們都是通過書中的目錄,然後根據目錄中的頁碼定位到我們要的資訊。同樣在mysql中也是這樣為我們準備了乙份目錄。當你去通過sql語句查詢的時候用不用索引,以及怎麼用索引。決...

mysql索引及優化

mysql的索引可以從不同的維度來進行區分,如下 這是最基本的索引型別,基於普通字段建立的索引,沒有任何限制。與 普通索引 類似,不同的就是 索引欄位的值必須唯一,但允許有空值 在建立或修改表時追加唯一 約束,就會自動建立對應的唯一索引。它是一種特殊的唯一索引,不允許有空值。在建立或修改表時追加主鍵...

MySQL優化(三) 索引原理及索引優化

b tree索引,它是目前關係型資料庫中查詢資料最為常用和有效的索引,大多數儲存引擎都支援這種索引。使用b tree這個術語,是因為mysql在create table或其它語句中使用了這個關鍵字,但實際上不同的儲存引擎可能使用不同的資料結構,比如innodb就是使用的b tree。中的b是指bal...