1. 程式人生 > >MySQL存儲引擎Innodb和MyISAM對比總結

MySQL存儲引擎Innodb和MyISAM對比總結

級別 索引 日誌 鎖定 lte mysql 恢復 ins 標準

Innodb引擎

InnoDB是一個事務型的存儲引擎,設計目標是處理大數量數據時提供高性能的服務,它在運行時會在內存中建立緩沖池,用於緩沖數據和索引。

Innodb引擎優點

1.支持事務處理、ACID事務特性;
2.實現了SQL標準的四種隔離級別;
3.支持行級鎖和外鍵約束;
4.可以利用事務日誌進行數據恢復。

Innodb引擎缺點

1.不支持FULLTEXT類型的索引,因為它沒有保存表的行數,當使用COUNT統計時會掃描全表。

Innodb引擎適用場景

1.需要事務的操作;
2.更新數據需要使用行級鎖;
3.大數據量讀寫;
4.大型互聯網應用。

MyISAM引擎

MyISAM是MySQL默認的引擎,它的設計目標是快速讀取。

MyISAM引擎優點

1.高性能讀取;
2.因為它保存了表的行數,當使用COUNT統計時不會掃描全表;

MyISAM引擎缺點

1.不支持數據庫事務;
2.不支持行級鎖和外鍵;
3.INSERT和UPDATE操作需要鎖定整個表;
4.不支持故障恢復;

MyISAM引擎適用場景

1.不需要事務的操作;
2.插入、更新少,讀取頻繁;

3.頻繁的統計計算。

MySQL存儲引擎Innodb和MyISAM對比總結