天天看點

Mysql 資料庫幾種引擎的差別比較

  •  MyISAM:預設的MySQL插件式存儲引擎,它是在Web、資料倉儲和其他應用環境下最常使用的存儲引擎之一。注意,通過更改STORAGE_ENGINE配置變量,能夠友善地更改MySQL伺服器的預設存儲引擎。
  • InnoDB:用于事務處理應用程式,具有衆多特性,包括ACID事務支援。(提供行級鎖)
  • BDB:可替代InnoDB的事務引擎,支援COMMIT、ROLLBACK和其他事務特性。
  •  Memory:将所有資料儲存在RAM中,在需要快速查找引用和其他類似資料的環境下,可提供極快的通路。
  • Merge:允許MySQL DBA或開發人員将一系列等同的MyISAM表以邏輯方式組合在一起,并作為1個對象引用它們。對于諸如資料倉儲等VLDB環境十分适合。
  • Archive:為大量很少引用的曆史、歸檔、或安全審計資訊的存儲和檢索提供了完美的解決方案。
  • Federated:能夠将多個分離的MySQL伺服器連結起來,從多個實體伺服器建立一個邏輯資料庫。十分适合于分布式環境或資料集市環境。
  • Cluster/NDB:MySQL的簇式資料庫引擎,尤其适合于具有高性能查找要求的應用程式,這類查找需求還要求具有最高的正常工作時間和可用性。
  • Other:其他存儲引擎包括CSV(引用由逗号隔開的用作資料庫表的檔案),Blackhole(用于臨時禁止對資料庫的應用程式輸入),以及Example引擎(可為快速建立定制的插件式存儲引擎提供幫助)。

一般來說不使用事務的話,請使用MyISAM引擎,使用事務的話,一般使用InnoDB

如果需要檢視每一種引擎的詳細情況可以通過:show engines