![MariaDB數(shù)據(jù)庫存儲引擎詳解資料_第1頁](http://file4.renrendoc.com/view/dfad3222a260b17b7e0a02bffc717c1d/dfad3222a260b17b7e0a02bffc717c1d1.gif)
![MariaDB數(shù)據(jù)庫存儲引擎詳解資料_第2頁](http://file4.renrendoc.com/view/dfad3222a260b17b7e0a02bffc717c1d/dfad3222a260b17b7e0a02bffc717c1d2.gif)
![MariaDB數(shù)據(jù)庫存儲引擎詳解資料_第3頁](http://file4.renrendoc.com/view/dfad3222a260b17b7e0a02bffc717c1d/dfad3222a260b17b7e0a02bffc717c1d3.gif)
![MariaDB數(shù)據(jù)庫存儲引擎詳解資料_第4頁](http://file4.renrendoc.com/view/dfad3222a260b17b7e0a02bffc717c1d/dfad3222a260b17b7e0a02bffc717c1d4.gif)
![MariaDB數(shù)據(jù)庫存儲引擎詳解資料_第5頁](http://file4.renrendoc.com/view/dfad3222a260b17b7e0a02bffc717c1d/dfad3222a260b17b7e0a02bffc717c1d5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
MariaDB數(shù)據(jù)庫存儲引擎詳解在看MariaDB的存儲引擎之前,可以先了解 MySQL存儲引擎。MySQL常用的存儲引擎 :MyISAM 存儲引擎:是 MySQL的默認存儲引擎。 MyISAM 不支持事務(wù)、也不支持外鍵,但其訪問速度快,對事務(wù)完整性沒有要求。MyISAM 表還支持 3中不同的存儲格式:靜態(tài)表動態(tài)表壓縮表靜態(tài)表是默認的存儲格式,靜態(tài)表中的字段都是非變長的字段,優(yōu)點是:存儲非常迅速,容易緩存,出現(xiàn)故障容易恢復(fù);缺點是:占用的空間通常比動態(tài)表多。(注意:在存儲時,列的寬度不足時,用空格補足,當時在訪問的時候并不會得到這些空格)動態(tài)表的字段是變長的,優(yōu)點是:占用的空間相對較少,但是頻繁地更新刪除記錄會產(chǎn)生碎片,需要定期改善性能,并且出現(xiàn)故障的時候恢復(fù)相對比較困難。壓縮表占用磁盤空間小,每個記錄是被單獨壓縮的,所以只有非常小的訪問開支。MyISAM 表存儲為三個文件: .frm文件存儲表定義。數(shù)據(jù)文件的擴展名為 .MYD(MYData) 。索引文件的擴展名是 .MYI(MYIndex)InnoDB存儲引擎:提供了具有提交、回滾和崩潰恢復(fù)能力的事務(wù)安全。但是比起 MyISAM存儲引擎,InnoDB寫的處理效率差一些并且會占用更多的磁盤空間以保留數(shù)據(jù)和索引。MEMORY(heap)存儲引擎:memory實際是heap的替代品。使用存在內(nèi)存中的內(nèi)容來創(chuàng)建表。每個MEMORY 表只實際對應(yīng)一個磁盤文件 (只包含表定義 )。優(yōu)點:MEMORY 類型的表訪問非常得快,因為它的數(shù)據(jù)是放在內(nèi)存中的,并且默認使用HASH索引缺點:一旦服務(wù)關(guān)閉,表中的數(shù)據(jù)就會丟失掉。其只支持表鎖,并發(fā)性能較差 ,并且不支持TEXT和BLOB列類型.存儲變長字段( varchar)時是按照定常字段( char)的方式進行的,因此會浪費內(nèi)存MERGE(mrg_myisam)存儲引擎:是一組MyISAM 表的組合,這些 MyISAM 表必須結(jié)構(gòu)完全相同。MERGE表本身沒有數(shù)據(jù),類似于一個視圖.對MERGE類型的表進行查詢、更新、除的操作,就是對內(nèi)部的MyISAM表進行的。似乎看到分區(qū)表的影子,但完全是兩種不同的東西.
刪官網(wǎng)說明archive存儲引擎:這種類型只支持 select和 insert語句,而且不支持索引。非常適合存儲大量的獨立的作為歷史記錄的數(shù)據(jù)。 Archive擁有高效的插入速度,但其對查詢的支持相對較差常,應(yīng)用于日志記錄和聚合分析方面。Federated:將不同的Mysql服務(wù)器聯(lián)合起來,邏輯上組成一個完整的數(shù)據(jù)庫。非常適合分布式應(yīng)用CSV:個.CSV
邏輯上由逗號分割數(shù)據(jù)的存儲引擎。它會在數(shù)據(jù)庫子目錄里為每個數(shù)據(jù)表創(chuàng)建一文件。這是一種普通文本文件,每個數(shù)據(jù)行占用一個文本行。 CSV存儲引擎不支持索引。BlackHole :黑洞引擎,寫入的任何數(shù)據(jù)都會消失,一般用于記錄 binlog做復(fù)制的中繼MYSQL 中的部分存儲引擎的特性 :AttributeMyISAMHeapBDBInnoDBTransactions(支持事務(wù))NoNoYesYesLockgranularity(鎖粒度)TableTablePage(8KB)RowStorage(存儲)SplitfilesIn-memorySinglefileperTablespace(s)tableIsolationlevels(隔離級別)NoneNoneReadcommittedAllPortableformat(可移植性)YesN/ANoYesReferentialintegrity(參照完整性,似乎是對外NoNoNoYes鍵的支持)PrimarykeywithdataNoNoYesYesMySQLcachesdatarecordsNoYesYesYesAvailability(支持的版本)AllAllversionsMySQL-MaxAllVersionsversionsMariaDB與MySQL 相比較MariaDB 提供以下特性:XtraDB
替換
InnoDB(在
MariaDB
中使用
InnoDB
等同于
XtraDB),XtraDB
是
Percona開發(fā)維護的
InnoDB
威力加強版,整合
Google、Facebook
等公司和
MySQL
社區(qū)的補丁。XtraDB
存儲引擎是完全的向下兼容,在
MariaDB
中,XtraDB
存儲引擎被標識為"ENGINE=InnoDB"
,這個與
InnoDB
是一樣的,所以你可以直接用
XtraDB
替換掉
InnoDB而不會產(chǎn)生任何問題Aria 存儲引擎和 Sphinx存儲引擎基于 GeleraCluster的MariaDB 集群方案多主復(fù)制(將在 MariaDB10.0 實現(xiàn),由淘寶貢獻)Cassandra存儲引擎(將在 MariaDB10.0 實現(xiàn)),MariaDB 更強的地方在于:Aria(原名Maria) 存儲引擎Aria 存儲引擎是默認被編譯進 MariaDB5.1里的,并且在mysqld啟動的時候就要求同時啟動 .另外,內(nèi)部的磁盤表是 Aria表格式而不是 MyISAM 表格式.這將使某些 GROUP BY和DISTINCT 請求速度更快,因為Aria有比MyISAM 更好的緩沖機制 .包含Aria是MariaDB5.1和MySQL5.1之間的一個不同.TRANSACTIONAL=0|1:Transactional meanscrash-safeforAriaPAGE_CHECKSUM=0|1:Ifindexand datashouldusepagechecksumsforextrasafety.TABLE_CHECKSUM=0|1:Same asCHECKSUMinMySQL5.1ROW_FORMAT=PAGE:Thenewcacheable rowformatforAriatables.DefaultrowformatforAriatablesandonlyrowformatthatcanbeusedifTRANSACTIONAL=1.ToemulateMyISAM,useROW_FORMAT=FIXEDorROW_FORMAT=DYNAMICCHECKSUMTABLEnowignoresvaluesinNULLfields.This makesCHECKSUMTABLEfasterandfixessomecaseswheresametabledefinitioncouldgivedifferentchecksumvaluesdependingonrowformat.ThedisadvantageisthatthevalueisnowdifferentcomparedtootherMySQLinstallations.ThenewchecksumcalculationisfixedforalltableenginesthatusesthedefaultwaytocalculateandMyISAMwhichdoesthecalculationinternally.Note:OldMyISAMtableswithinternalchecksumwillreturnthesamechecksumasbefore.TofixthemtocalculateaccordingtonewrulesyouhavetodoanALTERTABLE.Youcanusetheoldwaystocalculatechecksumsbyusingtheoption--oldtomysqldorsetthesystemvariable'@@old'to1whenyoudoCHECKSUMTABLE...EXTENDED;AtstartupAriawillchecktheArialogsandautomaticallyifmysqldwasnottakendowncorrectly.
recoverthetablesfromlastcheckpointPBXT但從
是MariaDBMariaDB5.5
附帶的一種存儲引擎,開始就不再提供 PBXT
PBXT 在MariaDB 的5.1/5.2/5.3存儲引擎,而且以后也將不再提供。
版本中存在,原因是PBXT已經(jīng)不再繼續(xù)開發(fā)了,當然,在MariaDB的源碼發(fā)行中還將包含它的源碼,但你需要自行構(gòu)建才能使用。PerconaXtraDB 是InnoDB 存儲引擎的增強版,被設(shè)計用來更好的使用更新計算機硬件系統(tǒng)的性能,同時還包含有一些在高性能環(huán)境下的新特性。XtraDB
存儲引擎是完全的向下兼容,在
MariaDB
中,XtraDB
存儲引擎被標識為"ENGINE=InnoDB"
,這個與
InnoDB
是一樣的,所以你可以直接用
XtraDB
替換掉InnoDB
而不會產(chǎn)生任何問題。PerconaXtraDB 包含有所有 InnoDB's 健壯性,可依賴的 ACID 兼容設(shè)計和高級MVCC 架構(gòu)。XtraDB 在InnoDB 的堅實基礎(chǔ)上構(gòu)建, 使XtraDB 具有更多的特性, 更好調(diào)用,更多的參數(shù)指標和更多的擴展。從實踐的角度來看,XtraDB被設(shè)計用來在多核心的條件下更有效的使用內(nèi)存和更加方便,更加可用。新的特性被用來降低 InnoDB 的局限性。MariaDB 對存儲引擎新特性的選擇基于用戶的需求和現(xiàn)實環(huán)境中的真實需求。FederatedX存儲引擎 分布式存儲SphinxSE存儲引擎 用于全文檢索官網(wǎng)介紹更快的復(fù)制查詢處理線程池更少的警告和 bug運行速度更快多的 Extensions(Moreindexparts,newstartupoptionsetc)更好的功能測試數(shù)據(jù)表消除慢查詢?nèi)罩镜臄U展統(tǒng)計支持對 Unicode的排序MariaDB 存儲引擎小結(jié)引擎引擎優(yōu)點缺點適用場景問題思考Aria1寫入的效率較XtraDB支持事務(wù)差需要事務(wù)支持的生產(chǎn)環(huán)2占用更多境的存儲空間1.和單機相比的讀寫效率如FederatedX支持分布式需要使用分布式系統(tǒng)的何?系統(tǒng)情況2.如某個RDBMS故障會發(fā)生什么?支持全文檢需要全文檢索的情景SphinxSE使用前要單獨安索裝可以創(chuàng)建Aria表再通過觸發(fā)1.重啟后數(shù)據(jù)清器定入memory表MEMORY讀寫速度快空使用讀頻繁的基礎(chǔ)代碼aria表負責(zé)更2.占用內(nèi)存表新,memory表負責(zé)讀取空間重啟后通過aria表初始化memory表如:將數(shù)據(jù)進行分表存儲感覺只是在使用的時候方便合并多個同1.執(zhí)行效率沒有(表的數(shù)并沒有帶來效率的提提升量隨時間增長)又升MERGE(mrg_myisam)構(gòu)表進行操2.本身沒有需要對這些表約束完全由基礎(chǔ)表控作任何約束進行聚合操作,這制,這樣會在多個表中時可以使用merge產(chǎn)生重復(fù)數(shù)據(jù)1.只支持插入和適用于日志類的,只插archive插入速度非查找入不修改???.不支持索且查詢較少的數(shù)引據(jù).CSVBlackHole官網(wǎng)的一些建議 :XtradbandInnoDBisagoodgeneraltransactionstorageengineandusuallythebestchoiceifunsure.--Xtradband InnoDB是一種很好的通用事務(wù)存儲引擎 ,在無法確定如何選擇時 ,它也許就是一種最佳的選擇MyISAMandAriahaveasmallfootprintandallow foreasycopybetweensystems.MyISAMisMySQL'soldeststorage engine,whileAriaisMariaDB'smoremodernimprovement.--MyISAMandAria占用的資源比較小,兩者是兼容的,可以很容易的在這兩個系統(tǒng)間進行遷移.MyISAM是mysql最古老的存儲引擎,而Aria是MariaDB對它的更先進的改進.TokuDBisatransactionalstorageenginewhichisoptimizedforworkloadsthatdonotfitmemory,andprovidesagoodcompressionratio.MEMORYdoesnotwritedataon-disk(allrowsareloston crash)andisbest-usedforread-onlycachesofdatafromother tables,orfortemporaryworkareas.--MEMORY 不寫數(shù)據(jù)到硬盤中 (意味著重啟將丟失 ),最適用于緩存其它表中的數(shù)據(jù)用于只讀,或者用于臨時工作區(qū)TheArchivestorageengineis,unsurprisingly,best usedforarchiving.--Archive顧名思義最適用于存檔類的數(shù)據(jù)CONNECTallowsaccesstodifferentkindsoftextfilesand remoteresourcesasiftheywereregularMariaDBtables.SphinxSEis
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年公司車輛借用管理協(xié)議
- 2025年企業(yè)并購雙方股權(quán)策劃合同樣本
- 2025年產(chǎn)品銷售代表合同范本
- 2025年多功能會議室租賃合同樣本
- 2025年企業(yè)人力資源部門員工雇傭協(xié)議
- 2025年個人租賃協(xié)議范本
- 2025年熱固化油墨項目規(guī)劃申請報告
- 2025年應(yīng)用軟件設(shè)計服務(wù)項目立項申請報告模范
- 2025年電力系統(tǒng)安全策劃生產(chǎn)責(zé)任協(xié)議書
- 2025年金融機構(gòu)信用借貸合同范文
- 2024年初級養(yǎng)老護理員職業(yè)鑒定考試題庫(含答案)
- 人教八年級上冊英語第一單元《Section A (1a-2d)》教學(xué)課件
- 2023年版《安寧療護實踐指南(試行)》解讀課件
- 2024年銀行考試-興業(yè)銀行筆試考試歷年高頻考點試題摘選含答案
- 油氣勘探開發(fā)的勘探風(fēng)險管理
- 10kV環(huán)網(wǎng)柜改造工程施工方案設(shè)計
- 電工班三級安全教育內(nèi)容范本
- 新生兒疾病篩查可疑陽性、陽性兒復(fù)查隨訪登記表
- 開學(xué)前幼兒園安全培訓(xùn)
- 2024年春學(xué)期人教版pep版小學(xué)英語五年級下冊教學(xué)進度表
- 2023年湛江市麻章區(qū)教育局招聘事業(yè)編制教師考試真題
評論
0/150
提交評論