儲存引擎

姑娘你不對勁啊發表於2020-11-14

InnoDB

  • MySQL 預設的事務性儲存引擎,只有在需要它不支援的特性時,才考慮使用其它儲存引擎;
  • 實現了四個標準的隔離級別,預設級別是可重複讀。可重複讀隔離級別下,通過多版本併發控制(MVCC)+ Next-Key Locks防止幻影讀;
  • 主索引是聚簇索引,在索引中儲存了資料,從而避免直接讀取磁碟,因此對查詢效能有很大提升;
  • 內部做了很多優化,包括從磁碟讀取資料時採用的可預測性讀、能夠加快讀操作並且自動建立的自適應雜湊索引、能夠加速插入操作的插入緩衝區等;
  • 支援真正的線上熱備份。其它儲存引擎不支援線上熱備份,要獲取一致性檢視需要停止對所有表的寫入,而在讀寫混合場景中,停止寫入可能也意味著停止讀取;

MyISAM

相關文章