儲存引擎的使用可以根據具體業務,組合使用多種儲存引擎,以達到更好的效能,以下提供適用方案僅供參考,使用哪種儲存引擎並不是絕對的,具體要看實際情況。
簡單描述常用儲存引擎的適用環境(myisam,innodb,memory,merge)
myisam:
1)適用情況:預設的mysql外掛程式式儲存引擎,應用以讀和插入為主,較少的更新和刪除操作,且對事務的完整性和併發性要求不高
2)使用場景:myisam在web,資料倉儲和其他應用環境下是最常使用的儲存引擎之一。
innodb:
1)作用:innodb可以有效降低刪除、更新導致的鎖定;確保事務的完整提交和回滾;用於事務處理應用程式,支援外來鍵;
2)適用情況:應用對事務的完整性有比較高的要求,在併發條件下要求事務的一致性,資料操作除了插入和查詢外,還包括很多更新和刪除;
3)適用場景:類似計費系統或者財務系統等對資料準確性要求較高的系統,選擇innidb比較合適。
memory:
1)優點:將所有資料儲存在ram中,在需要快速定位記錄和其他類似資料的環境下,可提供極快的訪問。
2)缺陷:對錶的大小有限制,太大的表無法快取在記憶體中,其次要確保表的資料可以恢復,資料庫異常終止後表中的資料是可以恢復的
3)適用情況:memory表通常用來更新不太頻繁的小表,用以快速得到訪問效果。
merge:
1)適用情況:將一系列等同的myisam表以邏輯方式組合在一起,並作為乙個物件引用他們。
2)優點:可以突破對單個myisam表大小的限制;且通過將不同的表分布在多個磁碟上,可以有效改善merge表的訪問效率;
3)適用場景:諸如資料倉儲等vldb環境十分適合。
正確選擇儲存引擎對改善應用的效率可以起到事半功倍的效果,選擇好儲存引擎,還需要正確選擇表中資料型別。
常見的儲存引擎
mysql中的資料用各種不同的技術儲存在檔案 或者記憶體 中。這些技術中的每一種技術都使用不同的儲存機制 索引技巧 鎖定水平並且最終提供廣泛的不同的功能和能力。通過選擇不同的技術,你能夠獲得額外的速度或者功能,從而改善你的應用的整體功能。myisam 擁有較高的插入,查詢速度,但不支援事務 inno...
MySQL常見儲存引擎
基本資訊 innodb是mysql的預設事務型引擎,也是最重要 使用最廣泛的儲存引擎。應用場景 處理大量的短期事務 特性 基本資訊 在mysql5.1及之前版本,myisam是預設儲存引擎。提供了大量的特性,包括全文索引 壓縮 空間函式等。但myisam不支援事務和行級鎖,且有乙個嚴重缺陷是 崩潰之...
Mysql常見儲存引擎介紹
mysql有多種儲存引擎,每種儲存引擎有各自的優缺點,同學們可以擇優選擇使用 myisam innodb merge memory heap bdb berkeleydb example federated archive csv blackhole。mysql支援數個儲存引擎作為對不同表的型別的處...