mysql怎麼選擇合適的存儲引擎

以下內容摘抄與《深入淺出mysql》

在選擇存儲引擎時,應根據應用特點選擇合適的存儲引擎,對於複雜的應用系統可以根 據實際情況選擇多種存儲引擎進行組合。

下面是常用存儲引擎的適用環境。

 MyISAM:默認的 MySQL 插件式存儲引擎。如果應用是以讀操作和插入操作爲主,

只有很少的更新和刪除操作,並且對事務的完整性、併發性要求不是很高,那麼選擇

這個存 儲引擎是非常適合的。MyISAM 是在 Web、數據倉儲和其他應用環境下最常

使用的存儲引擎 之一。

 InnoDB:用於事務處理應用程序,支持外鍵。如果應用對事務的完整性有比較高的 要求,在併發條件下要求數據的一致性,數據操作除了插入和查詢以外,還包括很多的更新、 刪除操作,那麼 InnoDB 存儲引擎應該是比較合適的選擇。InnoDB 存儲引擎除了有效地降低 由於刪除和更新導致的鎖定,還可以確保事務的完整提交(Commit)和回滾(Rollback), 對於類似計費系統或者財務系統等對數據準確性要求比較高的系統,InnoDB 都是合適的選 擇。

 MEMORY:將所有數據保存在 RAM 中,在需要快速定位記錄和其他類似數據的環境 下,可提供極快的訪問。MEMORY 的缺陷是對錶的大小有限制,太大的表無法 CACHE 在內 存中,其次是要確保表的數據可以恢復,數據庫異常終止後表中的數據是可以恢復的。 MEMORY 表通常用於更新不太頻繁的小表,用以快速得到訪問結果。

 MERGE:用於將一系列等同的 MyISAM 表以邏輯方式組合在一起,並作爲一個對象 引用它們。MERGE 表的優點在於可以突破對單個 MyISAM 表大小的限制,並且通過將不同 的表分佈在多個磁盤上,可以有效地改善MERGE表的訪問效率。這對於諸如數據倉儲等VLDB 環境十分適合。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章