InnoDB與MyISAM等儲存引擎對比

2021-09-27 05:33:01 字數 1427 閱讀 9189

文章原文:blog.ouyangsihai.cn >> innodb與myisam等儲存引擎對比

innodb引擎是mysql的預設的儲存引擎,他有很多自己的特性,下面一一枚舉。

行鎖設計,支援外來鍵,非鎖定讀。

支援多版本的併發控制(mvcc)來獲得高併發性。

提供了插入緩衝、二次寫、自適應雜湊索引、預讀等高效能和高可用的功能。

上面這些算是 innodb 儲存引擎的一些特點了,也是它的優勢所在,為什麼 innodb 引擎會使用如此廣泛,就是因為它能有很好的效能。

支援全文索引。

表鎖設計

它的緩衝池只緩衝索引檔案不緩衝資料檔案,所以 myisam 儲存引擎表由mydmyi組成,前者儲存資料檔案,後者儲存索引檔案。

這一部分,主要簡要的介紹一下各個儲存引擎之間的差別,及主要的作用及特點。

特性對比

特性myisam

innodb

bdbmemory

archive

ndb儲存限制

無64tb無有

無有事務支援

支援鎖級別

表鎖行鎖

page錶行

行mvcc(併發控制)

支援支援

支援全文索引

支援集群索引

支援資料快取和索引快取

支援支援

支援資料壓縮

支援支援

批量插入速度高低

高高很高高

集群資料庫支援

支援外來鍵支援

支援適用場景

不需要事務的操作;插入、更新少,讀取頻繁;頻繁的統計計算。

需要事務的操作;更新資料需要使用行級鎖;大資料量讀寫;大型網際網路應用。

類似 innodb

資料量不大,需要被頻繁的訪問,而且資料丟失不會對業務產生比較嚴重的影響。

儲存引擎基本上用於資料歸檔,作為日誌表

集群 儲存引擎特性介紹

儲存引擎

主要特點

bdb可替代innodb的事務引擎,支援commit、rollback和其他事務特性

memory

資料儲存在記憶體中,重啟或崩潰,資料消失,使用雜湊索引

archive

只支援insert和select操作,支援索引,非常適合儲存歸檔資料, 目標:高速插入和壓縮功能

ndb集群儲存引擎,資料全部放在記憶體中,高可用、高效能的集群系統

federated

不存放資料,只是指向一台遠端mysql資料庫伺服器上的表

maria

新開發引擎,用於取代myisam儲存引擎。 支援事務和非事務、快取、索引檔案、行鎖、mvcc功能

Innodb與MyIsam區別一

mysql支援的儲存引擎 innodb myisam ndb memory archive。儲存檔案 1,事務處理 innodb 支援事務功能,myisam 不支援。myisam 的執行速度更快,效能更好。myisam管理非事務表。它提供高速儲存和檢索,以及全文搜尋能力。如果應用中需要執行大量的se...

MyISAM與InnoDB的異同

myisam與innodb的異同 一 引言 儲存引擎是mysql三層架構中的最下面的一層,負責資料的儲存和提取,也是mysql的核心所在。儲存引擎提供統一的api供上層呼叫。雖然對上層提供的api是統一的,但是不同的儲存引擎有不同的實現方式。每個儲存引擎都有各自的側重點,從而各有優缺點。在mysql...

MyISAM與InnoDB 的區別

innodb支援事務,myisam不支援,對於innodb每一條sql語言都預設封裝成事務,自動提交,這樣會影響速度,所以最好把多條sql語言放在begin和commit之間,組成乙個事務 innodb支援外來鍵,而myisam不支援。對乙個包含外來鍵的innodb表轉為myisam會失敗 inno...