經常使用存儲引擎的適用環境:
MyISAM:默認的Mysql插件式存儲引擎。若是應用是以讀操做和插入操做爲主,只有不多的更新和刪除操做,並對事務的完整性、併發性要求不是很高,那麼選擇這個存儲引擎是很是合適的。MyISAM是在Web、數據倉儲和其餘應用環境下最經常使用的存儲引擎之一。
InnoDB:用於事務處理應用,支持外鍵。若是應用對事務的完整性有比較高的要求,在併發條件下要求數據的一致性,數據操做除了插入和查詢之外,還包括不少的更新、刪除操做,那麼InnoDB存儲引擎應該是比較合適的選擇。InnoDB存儲引擎有效的下降因爲刪除和更新致使的鎖定,還能夠確保事務的完整提交(Commit)和回滾(Rollback),對於相似計費系統或者財務系統等對數據準確性要求比較高的系統,InnoDB都是合適的選擇。(分佈式事務只支持InnoDB)
MEMORY:將全部數據保存在RAM中,在須要快速定位記錄和其餘相似數據的環境下,能夠提供極快的訪問。MEMORY的缺陷是對錶的大小有限制,太大的表沒法CACHE在內存中,其次是要確保表的數據能夠恢復,數據庫異常終止後表中的數據是能夠回覆的。MEMORY表一般用於更新不太頻繁的小表,用以快速獲得訪問結果。
MERGE:用於將一系列等同的MyISAM表以邏輯方式組合在一塊兒,並做爲一個對象引用它們。MERGE表的優勢在於能夠突破對單個MyISAM表大小限制,而且經過將不一樣的表分佈在多個磁盤上,能夠有效的改善MERGE表的訪問效率。這對於諸如數據倉儲等VLDB環境十分合適。