高性能MySQL(第三版) 是在MySQL5.5的基礎(chǔ)上進(jìn)行講解的。
研讀了第六章 查詢性能優(yōu)化的1-2小節(jié),記錄一些知識(shí)點(diǎn)。
- 索引對(duì)如下類型的查詢有效:全值匹配、匹配最左前綴情竹、匹配列前綴、匹配范圍值、精確匹配某一列并范圍匹配另外一列秦效、只訪問(wèn)索引的查詢
- 如果不是按照索引的最左列開(kāi)始查找雏蛮,則無(wú)法使用索引
- 不能跳過(guò)索引中的列,如果索引為(a,b,c)阱州,只用 a,c 索引列時(shí)挑秉,MySQL 只能用索引 a
- 如果查詢中有某個(gè)列的范圍范圍查詢,則其右邊所有列都無(wú)法使用索引優(yōu)化查詢
- 可見(jiàn)苔货,索引的順序非常重要犀概,設(shè)置索引和使用索引的時(shí)候要格外注意
- 哈希索引 可以用 CRC32 做哈希,當(dāng)然也可以用FNV64做哈希夜惭,哈希沖突的情況會(huì)比 CRC32 少的多
- 不太常用的索引:空間數(shù)據(jù)索引(R-Tree)姻灶、全文索引
- 索引的優(yōu)點(diǎn)
- 索引大大減少了服務(wù)器需要掃描的數(shù)據(jù)量
- 因?yàn)?B-Tree 索引是按照順序存儲(chǔ)數(shù)據(jù),所以索引可以幫助服務(wù)器避免排序和臨時(shí)表
- 索引可以將隨機(jī) IO 變?yōu)轫樞?IO
-
三星索引
三星索引.png