文章原文:blog.ouyangsihai.cn >> InnoDB與MyISAM等存儲(chǔ)引擎對(duì)比
創(chuàng)新互聯(lián)專注于臺(tái)山網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供臺(tái)山營銷型網(wǎng)站建設(shè),臺(tái)山網(wǎng)站制作、臺(tái)山網(wǎng)頁設(shè)計(jì)、臺(tái)山網(wǎng)站官網(wǎng)定制、微信小程序定制開發(fā)服務(wù),打造臺(tái)山網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供臺(tái)山網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
InnoDB引擎是MySQL的默認(rèn)的存儲(chǔ)引擎,他有很多自己的特性,下面一一列舉。
上面這些算是 InnoDB 存儲(chǔ)引擎的一些特點(diǎn)了,也是它的優(yōu)勢(shì)所在,為什么 InnoDB 引擎會(huì)使用如此廣泛,就是因?yàn)樗苡泻芎玫男阅堋?/p>
MYD
和 MYI
組成,前者存儲(chǔ)數(shù)據(jù)文件,后者存儲(chǔ)索引文件。這一部分,主要簡要的介紹一下各個(gè)存儲(chǔ)引擎之間的差別,及主要的作用及特點(diǎn)。
特性 | MyISAM | InnoDB | BDB | Memory | Archive | NDB |
---|---|---|---|---|---|---|
存儲(chǔ)限制 | 無 | 64TB | 無 | 有 | 無 | 有 |
事務(wù) | 支持 | 支持 | ||||
鎖級(jí)別 | 表鎖 | 行鎖 | page | 表 | 行 | 行 |
MVCC(并發(fā)控制) | 支持 | 支持 | 支持 | |||
全文索引 | 支持 | |||||
集群索引 | 支持 | |||||
數(shù)據(jù)緩存和索引緩存 | 支持 | 支持 | 支持 | |||
數(shù)據(jù)壓縮 | 支持 | 支持 | ||||
批量插入速度 | 高 | 低 | 高 | 高 | 很高 | 高 |
集群數(shù)據(jù)庫支持 | 支持 | |||||
外鍵支持 | 支持 | |||||
適用場景 | 不需要事務(wù)的操作;插入、更新少,讀取頻繁;頻繁的統(tǒng)計(jì)計(jì)算。 | 需要事務(wù)的操作;更新數(shù)據(jù)需要使用行級(jí)鎖;大數(shù)據(jù)量讀寫;大型互聯(lián)網(wǎng)應(yīng)用。 | 類似 InnoDB | 數(shù)據(jù)量不大,需要被頻繁的訪問,而且數(shù)據(jù)丟失不會(huì)對(duì)業(yè)務(wù)產(chǎn)生比較嚴(yán)重的影響。 | 存儲(chǔ)引擎基本上用于數(shù)據(jù)歸檔,作為日志表 | 集群 |
存儲(chǔ)引擎 | 主要特點(diǎn) |
---|---|
BDB | 可替代InnoDB的事務(wù)引擎,支持COMMIT、ROLLBACK和其他事務(wù)特性 |
Memory | 數(shù)據(jù)存儲(chǔ)在內(nèi)存中,重啟或崩潰,數(shù)據(jù)消失,使用哈希索引 |
Archive | 只支持Insert和Select操作,支持索引,非常適合存儲(chǔ)歸檔數(shù)據(jù), 目標(biāo):高速插入和壓縮功能 |
NDB | 集群存儲(chǔ)引擎,數(shù)據(jù)全部放在內(nèi)存中,高可用、高性能的集群系統(tǒng) |
Federated | 不存放數(shù)據(jù),只是指向一臺(tái)遠(yuǎn)程MySQL數(shù)據(jù)庫服務(wù)器上的表 |
Maria | 新開發(fā)引擎,用于取代MyISAM存儲(chǔ)引擎。 支持事務(wù)和非事務(wù)、緩存、索引文件、行鎖、MVCC功能 |
文章有不當(dāng)之處,歡迎指正,如果喜歡微信閱讀,你也可以關(guān)注我的微信公眾號(hào):
好好學(xué)java
,獲取優(yōu)質(zhì)學(xué)習(xí)資源。