MySQL中常用的兩種引擎:InnoDB和MyISAM有什么區(qū)別呢?
InnoDB:
支持事務(wù)處理等
不加鎖讀取
支持外鍵
支持行鎖
不支持FULLTEXT類型的索引
不保存表的具體行數(shù),掃描表來(lái)計(jì)算有多少行
DELETE 表時(shí),是一行一行的刪除
InnoDB 把數(shù)據(jù)和索引存放在表空間里面
跨平臺(tái)可直接拷貝使用
InnoDB中必須包含AUTO_INCREMENT類型字段的索引
表格很難被壓縮
MyISAM:
不支持事務(wù),回滾將造成不完全回滾,不具有原子性
不支持外鍵
不支持外鍵
支持全文搜索
保存表的具體行數(shù),不帶where時(shí),直接返回保存的行數(shù)
DELETE 表時(shí),先drop表,然后重建表
MyISAM 表被存放在三個(gè)文件 。frm 文件存放表格定義。 數(shù)據(jù)文件是MYD (MYData) 。 索引文件是MYI (MYIndex)引伸
跨平臺(tái)很難直接拷貝
MyISAM中可以使AUTO_INCREMENT類型字段建立聯(lián)合索引
表格可以被壓縮
因?yàn)镸yISAM相對(duì)簡(jiǎn)單所以在效率上要優(yōu)于InnoDB.如果系統(tǒng)讀多,寫少。對(duì)原子性要求低。那么MyISAM最好的選擇。且MyISAM恢復(fù)速度快??芍苯佑脗浞莞采w恢復(fù)。
如果系統(tǒng)讀少,寫多的時(shí)候,尤其是并發(fā)寫入高的時(shí)候。InnoDB就是首選了。








暫無(wú)數(shù)據(jù)