這篇文章給大家分享的是有關(guān)MySQL中常用的引擎有哪些的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)專注于尋烏企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,成都商城網(wǎng)站開發(fā)。尋烏網(wǎng)站建設(shè)公司,為尋烏等地區(qū)提供建站服務(wù)。全流程按需制作,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
數(shù)據(jù)庫存儲(chǔ)引擎是數(shù)據(jù)庫底層軟件組織,數(shù)據(jù)庫管理系統(tǒng)(DBMS)使用數(shù)據(jù)引擎進(jìn)行創(chuàng)建、查詢、更新和刪除數(shù)據(jù)。不同的存儲(chǔ)引擎提供不同的存儲(chǔ)機(jī)制、索引技巧、鎖定水平等功能,使用不同的存儲(chǔ)引擎,還可以獲得特定的功能。
現(xiàn)在許多不同的數(shù)據(jù)庫管理系統(tǒng)都支持多種不同的數(shù)據(jù)引擎。MySql的核心就是存儲(chǔ)引擎。
存儲(chǔ)引擎查看
MySQL給開發(fā)者提供了查詢存儲(chǔ)引擎的功能,我這里使用的是MySQL5.1,可以在命令行窗口使用:
SHOW ENGINES
命令來查看MySQL使用的引擎,命令的輸出為(我用的Navicat Premium):
看到MySQL給用戶提供了這么多存儲(chǔ)引擎,包括處理事務(wù)安全表的引擎和出來了非事物安全表的引擎。
如果要想查看數(shù)據(jù)庫默認(rèn)使用哪個(gè)引擎,可以通過使用命令:
SHOW VARIABLES LIKE 'storage_engine';
來查看,查詢結(jié)果為:
在MySQL中,不需要在整個(gè)服務(wù)器中使用同一種存儲(chǔ)引擎,針對(duì)具體的要求,可以對(duì)每一個(gè)表使用不同的存儲(chǔ)引擎。Support列的值表示某種引擎是否能使用:YES表示可以使用、NO表示不能使用、DEFAULT表示該引擎為當(dāng)前默認(rèn)的存儲(chǔ)引擎 。
下面來看一下其中幾種常用的引擎。
一 、Innodb
支持事務(wù),是事務(wù)安全的,提供行級(jí)鎖與外鍵約束,有緩沖池,用于緩沖數(shù)據(jù)和索引。
適用場景:用于事務(wù)處理,具有ACID事物支持,應(yīng)用于執(zhí)行大量的insert和update操作的表。
二 、MyISAM
不支持事務(wù),不支持外鍵約束,不支持行級(jí)鎖,操作時(shí)需要鎖定整張表,不過會(huì)保存表的行數(shù),所以當(dāng)執(zhí)行select count(*) from tablename時(shí)執(zhí)行特別快。
適用場景:用于管理非事務(wù)表,提供高速檢索及全文檢索能力,適用于有大量的select操作的表,如 日志表
三 、MEMORY
使用存在于內(nèi)存中的內(nèi)容創(chuàng)建表,每一個(gè)memory只實(shí)際對(duì)應(yīng)一個(gè)磁盤文件。因?yàn)槭谴嬖趦?nèi)存中的,所以memory訪問速度非??欤以撘媸褂胔ash索引,可以一次定位,不需要像B樹一樣從根節(jié)點(diǎn)查找到支節(jié)點(diǎn),所以精確查詢時(shí)訪問速度特別快,但是非精確查找時(shí),比如like,這種范圍查找,hash就起不到作用了。另外一旦服務(wù)關(guān)閉,表中的數(shù)據(jù)就會(huì)丟失,因?yàn)闆]有存到磁盤中。
適用場景:主要用于內(nèi)容變化不頻繁的表,或者作為中間的查找表。對(duì)表的更新要謹(jǐn)慎因?yàn)閿?shù)據(jù)沒有被寫入到磁盤中,服務(wù)關(guān)閉前要考慮好數(shù)據(jù)的存儲(chǔ)
四、 MERGE
MERGE存儲(chǔ)引擎把一組MyISAM數(shù)據(jù)表當(dāng)做一個(gè)邏輯單元來對(duì)待,讓我們可以同時(shí)對(duì)他們進(jìn)行查詢。構(gòu)成一個(gè)MERGE數(shù)據(jù)表結(jié)構(gòu)的各成員MyISAM數(shù)據(jù)表必須具有完全一樣的結(jié)構(gòu)。每一個(gè)成員數(shù)據(jù)表的數(shù)據(jù)列必須按照同樣的順序定義同樣的名字和類型,索引也必須按照同樣的順序和同樣的方式定義。
除了便于同時(shí)引用多個(gè)數(shù)據(jù)表而無需發(fā)出多條查詢,MERGE數(shù)據(jù)表還提供了以下一些便利。
MERGE數(shù)據(jù)表可以用來創(chuàng)建一個(gè)尺寸超過各個(gè)MyISAM數(shù)據(jù)表所允許的最大長度邏輯單元
你看一把經(jīng)過壓縮的數(shù)據(jù)表包括到MERGE數(shù)據(jù)表里。比如說,在某一年結(jié)束之后,你應(yīng)該不會(huì)再往相應(yīng)的日志文件里添加記錄,所以你可以用myisampack工具壓縮它以節(jié)省空間,而MERGE數(shù)據(jù)表仍可以像往常那樣工作
感謝各位的閱讀!關(guān)于MySql中常用的引擎有哪些就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
文章題目:MySql中常用的引擎有哪些
URL標(biāo)題:http://www.rwnh.cn/article42/gjhhhc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、云服務(wù)器、面包屑導(dǎo)航、網(wǎng)站制作、App開發(fā)、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)