MySQL重温笔记-索引
生活随笔
收集整理的這篇文章主要介紹了
MySQL重温笔记-索引
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
mysql分客戶(hù)端、服務(wù)層、存儲(chǔ)引擎層,而索引的實(shí)現(xiàn)就是在存儲(chǔ)引擎層,因此各個(gè)不同的存儲(chǔ)引擎之間的索引都有細(xì)微的差別。
【B-Tree索引】
- MyIsam使用前綴壓縮技術(shù)使得索引更小,Innodb則按照原數(shù)據(jù)格式進(jìn)行存儲(chǔ)
- MyIsam索引通過(guò)數(shù)據(jù)的物理位置引用被索引的行,Innodb則根據(jù)主鍵引用被索引的行。
- 索引樹(shù)中的節(jié)點(diǎn)是有序的,所以索引適合全鍵值、鍵值范圍或鍵前綴查找(最左)。因?yàn)槭琼樞虻?#xff0c;所以也適合排序。
- 聯(lián)合索引的索引順序很重要
?
【哈希索引】
- 基于哈希實(shí)現(xiàn)。
- 只有Memory引擎顯式支持哈希索引
- 哈希索引只包含哈希值和行指針,而不存儲(chǔ)字段值
- 哈希索引數(shù)據(jù)并不是按照索引值順序存儲(chǔ)的
- 哈希索引不支持部分索引列匹配查找,哈希索引值是使用索引列全部?jī)?nèi)容來(lái)計(jì)算哈希值的
- 哈希索引只支持等值比較查詢(xún)
- 訪問(wèn)哈希索引的數(shù)據(jù)比較快,但是有多哈希值沖突的風(fēng)險(xiǎn)。
?
【全文索引】
查找匹配的是文本中的關(guān)鍵詞,類(lèi)似于搜索引擎
?
【索引的優(yōu)點(diǎn)】
- 減少表數(shù)據(jù)的掃描數(shù)量,不用全表掃描了
- 避免排序和臨時(shí)表【索引按順序的,節(jié)省了排序時(shí)間】。
- 將隨機(jī)I/O變?yōu)轫樞騃/O
【重點(diǎn)】【高效實(shí)用索引的技巧】
?
給text類(lèi)型添加索引時(shí),可以使用前綴索引,就是將值的內(nèi)容截取一部分作為索引。
?聯(lián)合索引(多列索引)要注意列順序。一般是考慮的因素是,使用率最高的列放到索引前列,避免隨機(jī)IO,排序。
?
【MySQL能夠使用三種方式應(yīng)用WHERE條件,從好到壞的順序?yàn)椤?/p>
?
?
【查詢(xún)的執(zhí)行流程】
?
轉(zhuǎn)載于:https://www.cnblogs.com/ymkfnuiwgij/p/8642587.html
總結(jié)
以上是生活随笔為你收集整理的MySQL重温笔记-索引的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: PTA实验作业-01
- 下一篇: python学习三:列表,元组