mysql默認(rèn)引擎是什么

mysql5.5之前,默認(rèn)引擎是“MyISAM”;從MySQL5.5版本開(kāi)始,默認(rèn)引擎是“InnoDB”,該引擎完全支持符合ACID和事務(wù),支持外鍵、提交、回滾、前滾操作,表的大小最高可達(dá)64TB。在MySQL中,可以使用“SHOW ENGINES;”命令查看系統(tǒng)所支持的引擎類(lèi)型以及默認(rèn)引擎;輸出結(jié)果中,DEFAULT關(guān)鍵字標(biāo)識(shí)的引擎就是當(dāng)前默認(rèn)的存儲(chǔ)引擎。

mysql默認(rèn)引擎是什么

本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。

數(shù)據(jù)庫(kù)存儲(chǔ)引擎是數(shù)據(jù)庫(kù)底層軟件組件,數(shù)據(jù)庫(kù)管理系統(tǒng)使用數(shù)據(jù)引擎進(jìn)行創(chuàng)建、查詢、更新和刪除數(shù)據(jù)操作。簡(jiǎn)而言之,存儲(chǔ)引擎就是指表的類(lèi)型。

數(shù)據(jù)庫(kù)的存儲(chǔ)引擎決定了表在計(jì)算機(jī)中的存儲(chǔ)方式。不同的存儲(chǔ)引擎提供不同的存儲(chǔ)機(jī)制、索引技巧、鎖定水平等功能,使用不同的存儲(chǔ)引擎還可以獲得特定的功能。

MySQL為其表提供各種存儲(chǔ)引擎,如InnoDB、MyISAM、Memory、Merge、Archive、CSV、BLACKHOLE 等。

在MySQL 5.5之前,當(dāng)您創(chuàng)建表而未明確指定存儲(chǔ)引擎時(shí),MyISAM是默認(rèn)存儲(chǔ)引擎。從版本5.5開(kāi)始,MySQL使用InnoDB作為默認(rèn)存儲(chǔ)引擎。

可以使用SHOW ENGINES;語(yǔ)句查看系統(tǒng)所支持的引擎類(lèi)型,結(jié)果如圖所示。

mysql默認(rèn)引擎是什么

Support 列的值表示某種引擎是否能使用,YES表示可以使用,NO表示不能使用,DEFAULT表示該引擎為當(dāng)前默認(rèn)的存儲(chǔ)引擎。

可以看出,當(dāng)前默認(rèn)的存儲(chǔ)引擎是InnoDB。

MyISAM 引擎

MyISAM擴(kuò)展了以前的ISAM存儲(chǔ)引擎。MyISAM表針對(duì)壓縮和速度進(jìn)行了優(yōu)化。MyISAM表也可以在平臺(tái)和操作系統(tǒng)之間移植。

MyISAM表的大小可以達(dá)到256TB,這是巨大的。此外,MyISAM表可以壓縮為只讀表以節(jié)省空間。在啟動(dòng)時(shí),MySQL會(huì)檢查MyISAM表是否存在損壞,甚至在出現(xiàn)錯(cuò)誤時(shí)對(duì)其進(jìn)行修復(fù)。MyISAM表不是事務(wù)安全的。

InnoDB 引擎

InnoDB表完全支持符合ACID和事務(wù)。它們也是性能的最佳選擇。InnoDB表支持外鍵,提交,回滾,前滾操作。InnoDB表的大小最高可達(dá)64TB。

與MyISAM一樣,InnoDB表可在不同平臺(tái)和操作系統(tǒng)之間移植。如有必要,MySQL還會(huì)在啟動(dòng)時(shí)檢查和修復(fù)InnoDB表。

MERGE 引擎

MERGE表是一個(gè)虛擬表,它將多個(gè)MyISAM表組合在一起,這些表具有與一個(gè)表類(lèi)似的結(jié)構(gòu)。MERGE存儲(chǔ)引擎也稱(chēng)為MRG_MyISAM引擎。MERGE表沒(méi)有自己的索引; 它使用組件表的索引。

使用MERGE表,可以在連接多個(gè)表時(shí)加快性能? 。MySQL只允許您對(duì)MERGE表執(zhí)行SELECT,DELETE,UPDATE和INSERT操作。如果DROP TABLE在MERGE表上使用MERGE語(yǔ)句,則僅刪除規(guī)范。基礎(chǔ)表不會(huì)受到影響。

Memory 引擎

內(nèi)存表存儲(chǔ)在內(nèi)存中并使用哈希索引,因此它們比MyISAM表更快。內(nèi)存表數(shù)據(jù)的生命周期取決于數(shù)據(jù)庫(kù)服務(wù)器的正常運(yùn)行時(shí)間。內(nèi)存存儲(chǔ)引擎以前稱(chēng)為HEAP。

Archive 引擎

歸檔存儲(chǔ)引擎允許您將大量記錄(用于歸檔)存儲(chǔ)為壓縮格式以節(jié)省磁盤(pán)空間。存檔存儲(chǔ)引擎在插入時(shí)壓縮記錄,并在讀取時(shí)使用zlib庫(kù)對(duì)其進(jìn)行解壓縮。

歸檔表僅允許INSERT和SELECT語(yǔ)句。ARCHIVE表不支持索引,因此需要對(duì)表讀取行進(jìn)行全表掃描。

CSV

CSV存儲(chǔ)引擎以逗號(hào)分隔值(CSV)文件格式存儲(chǔ)數(shù)據(jù)。CSV表提供了一種將數(shù)據(jù)遷移到非SQL應(yīng)用程序(如電子表格軟件)的便捷方法。

CSV表不支持NULL數(shù)據(jù)類(lèi)型。此外,讀取操作需要全表掃描。

FEDERATED

FEDERATED存儲(chǔ)引擎可讓您無(wú)需使用群集或復(fù)制技術(shù)管理從遠(yuǎn)程MySQL服務(wù)器的數(shù)據(jù)。本地聯(lián)合表不存儲(chǔ)任何數(shù)據(jù)。從本地聯(lián)合表查詢數(shù)據(jù)時(shí),將從遠(yuǎn)程聯(lián)合表中自動(dòng)提取數(shù)據(jù)。

【相關(guān)推薦:mysql視頻教程

以上就是

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊11 分享
站長(zhǎng)的頭像-小浪學(xué)習(xí)網(wǎng)月度會(huì)員