1. 程式人生 > >高效能mysql讀書筆記(四)

高效能mysql讀書筆記(四)

四,建立高效能的索引

索引也稱為鍵,索引是一種查詢資料有用的資料結構,索引優化是查詢優化中最優效的手段。 索引可以包含一列或者多列,mysql能夠高效的使用索引中的最左字首列,索引在儲存引擎層實現,不同的儲存引擎有不同的索引。B-tree索引作為大多數資料庫的索引資料結構,B-tree通常意味著所有的值都是順序執行的,如圖: 例如在B-Tree上按照字母查詢。 索引對於:全值匹配,匹配最左字首,匹配範圍值,匹配列字首,索引可以用於Oder by。 全值匹配:和索引中的所有的列進行匹配。 最左匹配:和索引中的第一列進行匹配。 匹配列字首:和索引中某一列的開頭部分匹配。 hash索引只有匹配所有的列的查詢才有效,hash索引通過hashCode計算每一列的hash值,hash表中儲存指向一列的指標。 索引的優點: 1,減少資料量的訪問 2,幫助伺服器避免排序 3,索引將隨機I/O變為順序I/O mysql使用聚簇索引,將索引值和行資料放在相鄰的位置。 資料庫優化:資料型別優化、sql查詢優化、索引優化。索引優化是最有效的資料庫優化手段。