看完上面的圖來總結changebuffer的選擇和設定
change buffer動態設定
change buffer 用的是 buffer pool 裡的記憶體,因此不能無限增大。change buffer 的大小,可以通過引數 innodb_change_buffer_max_size 來動態設定。這個引數設定為 50 的時候,表示 change buffer 的大小最多只能占用 buffer pool 的 50%。
實戰選擇
其實這兩種索引在查詢能力方面沒有太大的差別 但是介入更新效能推薦使用普通索引
如果你插入一條資料列入表單 插入完後前端會立刻選擇 顯示這條資料
那不建議使用change buffer 因為查詢時候會merge 所以使用的話就多了一步cb 不如不用
在使用機械硬碟時,change buffer 這個機制的收效是非常顯著的。所以,當你有乙個類似「歷史資料」的庫,並且出於成本考慮用的是機械硬碟時,那你應該特別關注這些表裡的索引,盡量使用普通索引,然後把 change buffer 盡量開大,以確保這個「歷史資料」表的資料寫入速度。(這句話是抄林老師的)
MySQL 普通索引 唯一索引和主索引
1 普通索引 普通索引 由關鍵字key或index定義的索引 的唯一任務是加快對資料的訪問速度。因此,應該只為那些最經常出現在查詢條件 wherecolumn 或排序條件 orderbycolumn 中的資料列建立索引。只要有可能,就應該選擇乙個資料最整齊 最緊湊的資料列 如乙個整數型別的資料列 來...
MySQL 普通索引 唯一索引和主索引
1.普通索引 普通索引 由關鍵字key或index定義的索引 的唯一任務是加快對資料的訪問速度。因此,應該只為那些最經常出現在查詢條件 where column 或排序條件 order by column 中的資料列建立索引。只要有可能,就應該選擇乙個資料最整齊 最緊湊的資料列 如乙個整數型別的資料...
MySQL 普通索引 唯一索引和主索引
1 普通索引 普通索引 由關鍵字key或index定義的索引 的唯一任務是加快對資料的訪問速度。因此,應該只為那些最經常出現在查詢條件 wherecolumn 或排序條件 orderbycolumn 中的資料列建立索引。只要有可能,就應該選擇乙個資料最整齊 最緊湊的資料列 如乙個整數型別的資料列 來...