資料庫索引

2021-08-21 17:42:35 字數 439 閱讀 8232

簡單介紹一下mysql的索引分類,並給出幾個常見問題,大家自己去探索加深理解,權當拋磚引玉了。

從資料結構角度

1、b+樹索引

2、hash索引

3、fulltext索引(innodb引擎5.7以後支援)

4、r-tree索引(用於對gis資料型別建立spatial索引)

問題:這些索引的區別跟用途在哪?b+樹相比hash的優點在哪?

從物理儲存角度

1、聚簇索引(clustered index)

2、非聚簇索引(non-clustered index)

問題:實現方式有什麼差異?

從邏輯角度

1、主鍵索引

2、單列索引

3、多列索引

4、唯一索引

問題:多列索引有什麼命中規則?這幾種索引對加鎖有什麼影響?

資料庫 資料庫索引

索引是儲存引擎用於快速找到記錄的一種資料結構。索引以檔案的形式儲存在磁碟中。索引可以包含乙個或多個列的值。儲存引擎查詢資料的時候,先在索引中找對應值,然後根據匹配的索引記錄找到對應的資料行。1.b tree索引 2.雜湊索引 myisam和innodb儲存引擎 只支援btree索引,也就是說預設使用...

資料庫mysql索引 資料庫 mysql索引

mysql 索引 mysql索引的建立對於mysql的高效執行是很重要的,索引可以大大提高mysql的檢索速度。打個比方,如果合理的設計且使用索引的mysql是一輛蘭博基尼的話,那麼沒有設計和使用索引的mysql就是乙個人力三輪車。索引分單列索引和組合索引。單列索引,即乙個索引只包含單個列,乙個表可...

資料庫索引

索引 索引列唯一索引 主鍵索引 聚簇索引和非聚簇索引 如何建立索引 如何刪除索引 使用索引可快速訪問資料庫表中的特定資訊。索引是對資料庫表中一列或多列的值進行排序的一種結構,例如 employee 表的姓 lname 列。如果要按姓查詢特定職員,與必須搜尋表中的所有行相比,索引會幫助您更快地獲得該資...