mysql中雜湊索引的使用限制

TigerJin發表於2021-09-11

mysql中雜湊索引的使用限制

1、Hash索引應進行二次搜尋。

使用雜湊索引兩次搜尋,第一次找到相應的行,第二次讀取資料,但頻繁訪問的行通常被儲存在儲存器中,對資料庫效能的影響不大。

2、hash索引不能用於外部排名。

hash索引儲存了hash程式碼而不是鍵,因此不能用於外部排名。

3、hash索引不支援部分索引搜尋或範圍搜尋。

只能使用等值查詢,不能進行範圍和模糊查詢。

4、hash索引中的hash碼計算可能存在hash衝突。

hash衝突發生時,儲存引擎必須經歷整個連結串列中的所有指標,逐行比較,直到找到所有符合條件的行為。如果hash衝突較多,一些索引的維護成本很高,所以hash索引不適合選擇性差的列(重複值較多)。姓名、性別、身份證(適當)

說到InnoDB的適應hash索引。在InnoDB注意到某些索引值被頻繁使用的情況下,在記憶體中基於B-Tree索引建立hash索引,B-tree索引也具有hash索引的優點。這是一種完全自動的內部行為,使用者無法控制或配置,但如有必要,可以完全關閉該功能。

以上就是mysql中雜湊索引的使用限制,希望對大家有所幫助。更多mysql學習指路:

推薦作業系統:windows7系統、mysql5.8、DELL G3電腦

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2144/viewspace-2829509/,如需轉載,請註明出處,否則將追究法律責任。

相關文章