這篇文章將為大家詳細(xì)講解有關(guān)mysql中InnoDB與MyISAM和InnoDB的區(qū)別是什么,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
在mysql中有幾種不同的存儲引擎,有的是運行速度快,有的是處理事務(wù)強,又或者是可以臨時使用。那么,為什么最后是InnoDB被選作默認(rèn)的存儲引擎呢?相信很多小伙伴都有這樣的疑慮,今天我們把它和MyISAM進(jìn)行功能和性能上的對比,找出InnoDB被作為默認(rèn)存儲引擎的原因。
以主流的MyISAM和InnoDB的對比
1.功能對比
InnoDB支持ACID的事務(wù)4個特性,而MyISAM不支持;
InnoDB支持4種事務(wù)隔離級別,默認(rèn)是可重復(fù)讀repeatable read,MyISAM不支持;
InnoDB支持crash安全恢復(fù),MyISAM不支持;InnoDB支持外鍵,MyISAM不支持;
InnoDB支持行級別的鎖粒度,MyISAM不支持,只支持表級別的鎖粒度;
InnoDB支持MVCC,MyISAM不支持。
InnoDB特性上,InnoDB表較大可以64TB,支持聚簇索引、支持壓縮數(shù)據(jù)存儲,支持?jǐn)?shù)據(jù)加密,支持查詢/索引/數(shù)據(jù)高速緩存,支持自適應(yīng)hash索引、空間索引,支持熱備份和恢復(fù)等。
2.性能對比
(1)讀寫混合模式下,隨著CPU核數(shù)的增加,InnoDB的讀寫能力呈線性增長,在這個測試用例里,高可達(dá)近9000的TPS,但MyISAM因為讀寫不能并發(fā),它的處理能力跟核數(shù)沒關(guān)系,呈一條水平線,TPS低于500。
(2)只讀模式下,隨著CPU核數(shù)的增加,InnoDB的讀寫能力呈線性增長,高可達(dá)近14000的TPS,但MyISAM的處理能力不到3000。
以上測試僅為說明InnoDB比MyISAM的處理能力強大,具體TPS測試數(shù)據(jù)跟硬件和測試條件不同而有很大差異。
拓展:
ARCHIVE存儲引擎
該存儲引擎非常適合存儲大量獨立的、作為歷史記錄的數(shù)據(jù)。區(qū)別于InnoDB和MyISAM這兩種引擎,ARCHIVE提供了壓縮功能,擁有高效的插入速度,但是這種引擎不支持索引,所以查詢性能較差一些。
注意,同一個數(shù)據(jù)庫也可以使用多種存儲引擎的表。如果一個表要求比較高的事務(wù)處理,可以選擇InnoDB。這個數(shù)據(jù)庫中可以將查詢要求比較高的表選擇MyISAM存儲。如果該數(shù)據(jù)庫需要一個用于查詢的臨時表,可以選擇MEMORY存儲引擎。
通過對比我們可以看出,雖然二者都是主流的存儲引擎,但大部分的性能上InnoDB都比MyISAM優(yōu)秀的太多,這也是我們把它作為默認(rèn)存儲引擎的原因之一。
關(guān)于“mysql中InnoDB與MyISAM和InnoDB的區(qū)別是什么”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
本文名稱:mysql中InnoDB與MyISAM和InnoDB的區(qū)別是什么-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://www.rwnh.cn/article22/doecjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、小程序開發(fā)、做網(wǎng)站、面包屑導(dǎo)航、ChatGPT、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容