MySQL高级 - 存储引擎 - 选择原则
存儲引擎的選擇
? 在選擇存儲引擎時,應該根據應用系統的特點選擇合適的存儲引擎。對于復雜的應用系統,還可以根據實際情況選擇多種存儲引擎進行組合。以下是幾種常用的存儲引擎的使用環境。
-  
InnoDB : 是Mysql的默認存儲引擎,用于事務處理應用程序,支持外鍵。如果應用對事務的完整性有比較高的要求,在并發條件下要求數據的一致性,數據操作除了插入和查詢意外,還包含很多的更新、刪除操作,那么InnoDB存儲引擎是比較合適的選擇。InnoDB存儲引擎除了有效的降低由于刪除和更新導致的鎖定, 還可以確保事務的完整提交和回滾,對于類似于計費系統或者財務系統等對數據準確性要求比較高的系統,InnoDB是最合適的選擇。
 -  
MyISAM : 如果應用是以讀操作和插入操作為主,只有很少的更新和刪除操作,并且對事務的完整性、并發性要求不是很高,那么選擇這個存儲引擎是非常合適的。
 -  
MEMORY:將所有數據保存在RAM中,在需要快速定位記錄和其他類似數據環境下,可以提供幾塊的訪問。MEMORY的缺陷就是對表的大小有限制,太大的表無法緩存在內存中,其次是要確保表的數據可以恢復,數據庫異常終止后表中的數據是可以恢復的。MEMORY表通常用于更新不太頻繁的小表,用以快速得到訪問結果。
 -  
MERGE:用于將一系列等同的MyISAM表以邏輯方式組合在一起,并作為一個對象引用他們。MERGE表的優點在于可以突破對單個MyISAM表的大小限制,并且通過將不同的表分布在多個磁盤上,可以有效的改善MERGE表的訪問效率。這對于存儲諸如數據倉儲等VLDB環境十分合適。
 
總結
以上是生活随笔為你收集整理的MySQL高级 - 存储引擎 - 选择原则的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: Memory与Merge特性
 - 下一篇: 查看SQL执行频率