婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > Mysql InnoDB引擎的索引與存儲(chǔ)結(jié)構(gòu)詳解

Mysql InnoDB引擎的索引與存儲(chǔ)結(jié)構(gòu)詳解

熱門(mén)標(biāo)簽:百度地圖標(biāo)注后不顯示 電銷(xiāo)機(jī)器人各個(gè)細(xì)節(jié)介紹 昆明電信400電話辦理 電銷(xiāo)機(jī)器人 行業(yè) 俄國(guó)地圖標(biāo)注app 溫州瑞安400電話怎么申請(qǐng) 南昌高頻外呼系統(tǒng)哪家公司做的好 淄博400電話申請(qǐng) 電話機(jī)器人市場(chǎng)趨勢(shì)

前言

在Oracle 和SQL Server等數(shù)據(jù)庫(kù)中只有一種存儲(chǔ)引擎,所有數(shù)據(jù)存儲(chǔ)管理機(jī)制都是一樣的。

而MySql數(shù)據(jù)庫(kù)提供了多種存儲(chǔ)引擎。用戶(hù)可以根據(jù)不同的需求為數(shù)據(jù)表選擇不同的存儲(chǔ)引擎,用戶(hù)也可以根據(jù)自己的需要編寫(xiě)自己的存儲(chǔ)引擎。

MySQL主要存儲(chǔ)引擎的區(qū)別

MySQL默認(rèn)的存儲(chǔ)引擎是MyISAM,其他常用的就是InnoDB,另外還有MERGE、MEMORY(HEAP)等。

主要的幾個(gè)存儲(chǔ)引擎

MyISAM管理非事務(wù)表,提供高速存儲(chǔ)和檢索,以及全文搜索能力。

MyISAM是Mysql的默認(rèn)存儲(chǔ)引擎。當(dāng)create創(chuàng)建新表時(shí),未指定新表的存儲(chǔ)引擎時(shí),默認(rèn)使用MyISAM。每個(gè)MyISAM在磁盤(pán)上存儲(chǔ)成三個(gè)文件。文件名都和表名相同,擴(kuò)展名分別是.frm(存儲(chǔ)表定義)、.MYD (MYData,存儲(chǔ)數(shù)據(jù))、.MYI (MYIndex,存儲(chǔ)索引)。數(shù)據(jù)文件和索引文件可以放置在不同的目錄,平均分布io,獲得更快的速度。

InnoDB存儲(chǔ)引擎用于事務(wù)處理應(yīng)用程序,具有眾多特性,包括ACID事務(wù)支持,提供了具有提交、回滾和崩潰恢復(fù)能力的事務(wù)安全。但是對(duì)比MyISAM存儲(chǔ)引擎,InnoDB寫(xiě)的處理效率差一些并且會(huì)占用更多的磁盤(pán)空間以保留數(shù)據(jù)和索引。

Memory將所有數(shù)據(jù)保存在內(nèi)存中,可以應(yīng)用于臨時(shí)表中在需要快速查找引用和其他類(lèi)似數(shù)據(jù)的環(huán)境下,可提供極快的訪問(wèn)。Memory使用哈希索引,所以數(shù)據(jù)的存取速度非常快。

Merge允許MySQL DBA或開(kāi)發(fā)人員將一系列等同的MyISAM表以邏輯方式組合在一起,并作為1個(gè)對(duì)象引用它們。對(duì)于諸如數(shù)據(jù)倉(cāng)儲(chǔ)等VLDB環(huán)境十分適合。

不同存儲(chǔ)引擎的橫向?qū)Ρ?/strong> 

特點(diǎn) MyISAM BDB Memory InnoDB
存儲(chǔ)限制 沒(méi)有 沒(méi)有 64TB
事務(wù)安全   支持   支持
鎖機(jī)制 表鎖 頁(yè)鎖 表鎖 行鎖
B樹(shù)索引 支持 支持 支持 支持
哈希索引     支持 支持
全文索引 支持      
集群索引       支持
數(shù)據(jù)緩存     支持 支持
索引緩存 支持   支持 支持
數(shù)據(jù)可壓縮 支持      
空間使用 N/A
內(nèi)存使用 中等
批量插入的速度
支持外鍵       支持

查看和配置存儲(chǔ)引擎的操作

1.用show engines; 命令可以顯示當(dāng)前數(shù)據(jù)庫(kù)支持的存儲(chǔ)引擎情況;

2.要查看表的定義結(jié)構(gòu)等信息可以使用以下幾種命令:

Desc[ribe] tablename; //查看數(shù)據(jù)表的結(jié)構(gòu)
Show create table tablename; //顯示表的創(chuàng)建語(yǔ)句,可以查看創(chuàng)建表時(shí)指定的ENGINE
show table status like ‘tablename'\G顯示表的當(dāng)前狀態(tài)值

3.設(shè)置或修改表的存儲(chǔ)引擎

創(chuàng)建數(shù)據(jù)庫(kù)表時(shí)設(shè)置存儲(chǔ)存儲(chǔ)引擎的基本語(yǔ)法是:

Create table tableName(
columnName(列名1) type(數(shù)據(jù)類(lèi)型) attri(屬性設(shè)置),
columnName(列名2) type(數(shù)據(jù)類(lèi)型) attri(屬性設(shè)置),
……..) engine = engineName

修改存儲(chǔ)引擎,可以用命令

Alter table tableName engine =engineName

對(duì)于整個(gè)服務(wù)器或方案,你并不一定要使用相同的存儲(chǔ)引擎,可以為方案中的每個(gè)表使用不同的存儲(chǔ)引擎。

InnoDB的存儲(chǔ)結(jié)構(gòu)

InnoDB使用頁(yè)面存儲(chǔ)結(jié)構(gòu),下面是InnoDB的表空間結(jié)構(gòu)圖:

Page頁(yè)面存儲(chǔ)格式如下圖所示:

一個(gè)頁(yè)面的存儲(chǔ)由以下幾部分組成:

  1. 頁(yè)頭(Page Header):記錄頁(yè)面的控制信息,共占150字節(jié),包括頁(yè)的左右兄弟頁(yè)面指針、頁(yè)面空間使用情況等,頁(yè)頭的詳細(xì)說(shuō)明會(huì)在下一篇中描述。
  2. 最小虛記錄、最大虛記錄:兩個(gè)固定位置存儲(chǔ)的虛記錄,本身并不存儲(chǔ)數(shù)據(jù)。最小虛記錄比任何記錄都小,而最大虛記錄比任何記錄都大。
  3. 記錄堆(record heap):指上圖的橙黃色部分。表示頁(yè)面已分配的記錄空間,也是索引數(shù)據(jù)的真正存儲(chǔ)區(qū)域。記錄堆分為兩種,即有效記錄和已刪除記錄。有效記錄就是索引正常使用的記錄,而已刪除記錄表示索引已經(jīng)刪除,不在使用的記錄,如上圖的深藍(lán)色部分。隨著記錄的更新和刪除越來(lái)越頻繁,記錄堆中已刪除記錄將會(huì)越多,即會(huì)出現(xiàn)越來(lái)越多的空洞(碎片)。這些已刪除記錄連接起來(lái),就會(huì)成為頁(yè)面的自由空間鏈表。
  4. 未分配空間:指頁(yè)面未使用的存儲(chǔ)空間,隨著頁(yè)面不斷使用,未分配空間將會(huì)越來(lái)越小。當(dāng)新插入一條記錄時(shí),首先嘗試從自由空間鏈表中獲得合適的存儲(chǔ)位置(空間足夠),如果沒(méi)有滿足的,就會(huì)在未分配空間中申請(qǐng)。
  5. slot區(qū):slot是一些頁(yè)面有效記錄的指針,每個(gè)slot占兩個(gè)字節(jié),存儲(chǔ)了記錄相對(duì)頁(yè)面首地址的偏移。如果頁(yè)面有n條有效記錄,那么slot的數(shù)量就在n/8+2~n/4+2之間。下一節(jié)詳細(xì)介紹slot區(qū),它是記錄頁(yè)面有序和二分查找的關(guān)鍵。
  6. 頁(yè)尾(Page Tailer):頁(yè)面最后部分,占8個(gè)字節(jié),主要存儲(chǔ)頁(yè)面的校驗(yàn)信息。

頁(yè)面中的頁(yè)頭,最大/最小虛記錄以及頁(yè)尾都是頁(yè)面中有固定的存儲(chǔ)位置。

InnoDB的索引結(jié)構(gòu)

InnoDB使用B+Tree的方式存儲(chǔ)索引。

Innodb的一個(gè)表可能包含多個(gè)索引,每個(gè)索引都使用B+樹(shù)來(lái)存儲(chǔ)。而索引包括聚集索引和二級(jí)索引,聚集索引使用表的主鍵作為索引鍵,包含表的所有字段。二級(jí)索引只包含索引鍵和聚集索引鍵(主鍵)的內(nèi)容,不包括其他字段。每一個(gè)索引都是一棵B+樹(shù),每棵B+樹(shù)由很多頁(yè)面組成,而每個(gè)頁(yè)面大小一般為16K。從B+樹(shù)的組織結(jié)構(gòu)來(lái)看,B樹(shù)的頁(yè)面可分為:

葉子節(jié)點(diǎn):B樹(shù)層次為0的頁(yè)面,存儲(chǔ)記錄的所有內(nèi)容。
非葉子節(jié)點(diǎn):B樹(shù)層次大于0的頁(yè)面,只存儲(chǔ)索引鍵和頁(yè)面指針。

一棵典型的B+樹(shù)結(jié)構(gòu):

從上圖可知,相同層次的頁(yè)面是用一個(gè)雙向鏈表連接起來(lái)的。

一般情況下,從B+樹(shù)的最左邊葉子節(jié)點(diǎn)開(kāi)始,一直向右掃描,就可以得到B+樹(shù)的從小到大的所有數(shù)據(jù)。因此,對(duì)于葉子節(jié)點(diǎn),有如下特征:

頁(yè)內(nèi)數(shù)據(jù)是按索引鍵排序的。

頁(yè)面的任一記錄的索引鍵值不小于其左兄弟頁(yè)面的任何記錄。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

您可能感興趣的文章:
  • MySQL slow_log表無(wú)法修改成innodb引擎詳解
  • MySQL存儲(chǔ)引擎InnoDB的配置與使用的講解
  • MySQL存儲(chǔ)引擎MyISAM與InnoDB區(qū)別總結(jié)整理
  • MySQL InnoDB存儲(chǔ)引擎的深入探秘
  • 修改MySQL數(shù)據(jù)庫(kù)引擎為InnoDB的操作

標(biāo)簽:安徽 甘南 葫蘆島 拉薩 海口 洛陽(yáng) 吐魯番 嘉峪關(guān)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Mysql InnoDB引擎的索引與存儲(chǔ)結(jié)構(gòu)詳解》,本文關(guān)鍵詞  Mysql,InnoDB,引擎,的,索引,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Mysql InnoDB引擎的索引與存儲(chǔ)結(jié)構(gòu)詳解》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于Mysql InnoDB引擎的索引與存儲(chǔ)結(jié)構(gòu)詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产精品888| 欧美大肚乱孕交hd孕妇| 国产一区二区美女| 欧美裸体bbwbbwbbw| 欧美日高清视频| 日韩综合在线视频| 成熟亚洲日本毛茸茸凸凹| 麻豆国产欧美日韩综合精品二区| 色婷婷综合久色| 国产精品美女一区二区在线观看| 粉嫩av一区二区三区粉嫩 | 日韩精品一区第一页| 中文字幕av一区二区三区免费看| 国产视频视频一区| 日本不卡视频在线| bt7086福利一区国产| 成人激情电影免费在线观看| 亚洲三级小视频| 蓝色福利精品导航| 在线免费一区三区| 日韩一级二级三级精品视频| 精品三级在线观看| 国产一区二区三区久久久| 99re热视频精品| 国产欧美日韩久久| 精品一区二区免费| 国产精品欧美久久久久一区二区| 欧美日韩美女一区二区| 国产精品资源站在线| 日韩一区二区三区精品视频| 三级久久三级久久久| 日韩精品一区二区三区在线播放 | 久久精品网站免费观看| 中文字幕中文字幕一区| 日韩中文字幕一区二区三区| 5858s免费视频成人| 欧美在线999| 欧美男生操女生| 欧美电影免费观看高清完整版在| 久久久精品综合| 日韩成人免费在线| 久久你懂得1024| 5月丁香婷婷综合| 欧美日韩专区在线| 国精品**一区二区三区在线蜜桃| 欧美日韩大陆在线| 色综合天天做天天爱| 国产精品影视网| 国产精品 欧美精品| 老司机一区二区| 麻豆成人久久精品二区三区小说| 中文字幕一区三区| 精品91自产拍在线观看一区| 6080日韩午夜伦伦午夜伦| 欧美日韩在线播放| 欧美体内she精视频| 欧美色老头old∨ideo| 欧美婷婷六月丁香综合色| 99久久久国产精品| 色悠久久久久综合欧美99| aaa亚洲精品一二三区| 成人动漫一区二区三区| 成人黄色小视频在线观看| 春色校园综合激情亚洲| 欧美综合一区二区| 日韩一区二区精品葵司在线| 国产日韩欧美麻豆| 亚洲国产毛片aaaaa无费看| 蜜桃视频在线观看一区| 国产成人久久精品77777最新版本| 99re这里只有精品首页| 欧美电影免费提供在线观看| 玉米视频成人免费看| 国产精品99久久久久久似苏梦涵| 欧美日韩综合在线| 亚洲色图清纯唯美| hitomi一区二区三区精品| 精品sm捆绑视频| 国产精品一线二线三线| 国产欧美一区在线| 国产宾馆实践打屁股91| 欧美哺乳videos| 水蜜桃久久夜色精品一区的特点| 成人夜色视频网站在线观看| 国产亚洲1区2区3区| 综合久久一区二区三区| 欧美日韩高清一区二区| 欧美亚洲一区三区| av亚洲精华国产精华| 欧美性一二三区| 日韩午夜在线播放| 国产精品久久久久久久裸模| 一片黄亚洲嫩模| 麻豆精品在线视频| 99re这里都是精品| 欧美一区二区网站| 一区二区不卡在线播放| 日本欧美一区二区三区乱码| 国产精品一区在线| 91精品国产黑色紧身裤美女| 91在线码无精品| 欧美极品少妇xxxxⅹ高跟鞋 | 国产亚洲欧洲一区高清在线观看| 欧美成人在线直播| 91麻豆精品国产综合久久久久久| 国产精品久久久久影院亚瑟| 1000精品久久久久久久久| 亚洲激情男女视频| 国产精品中文字幕欧美| 制服.丝袜.亚洲.另类.中文| 美女视频黄频大全不卡视频在线播放| 婷婷综合五月天| 色婷婷一区二区三区四区| 国产精品乱码一区二三区小蝌蚪| 日韩精品欧美精品| 欧美日韩国产一级| 一区二区三区久久| 91麻豆国产精品久久| 欧美videossexotv100| 日精品一区二区三区| 国产最新精品免费| 久久人人超碰精品| 国产91在线看| 欧美日韩性生活| 国产综合色精品一区二区三区| 欧美剧在线免费观看网站| 亚洲成人先锋电影| 日韩视频一区在线观看| 天天综合网 天天综合色| 欧美一区二区美女| 亚洲欧美aⅴ...| 国产馆精品极品| 日韩精品一区二区三区视频在线观看 | 色欧美片视频在线观看| 中文字幕一区日韩精品欧美| 色综合久久天天| 日韩理论片中文av| 色综合久久综合中文综合网| 亚洲国产精品一区二区久久 | 日韩理论片在线| 色婷婷综合久久久中文一区二区| 日韩专区一卡二卡| www国产成人免费观看视频 深夜成人网| 91亚洲男人天堂| 一区二区三区成人在线视频| 色婷婷亚洲精品| 亚洲黄色av一区| 韩国欧美一区二区| 亚洲国产精品av| 蜜桃视频在线观看一区二区| 欧美精品一区二区在线观看| 91黄色激情网站| 精品成人一区二区| 国产精品免费av| 91捆绑美女网站| 自拍偷拍国产精品| 国产日产亚洲精品系列| 丁香婷婷综合色啪| 国产精品亚洲午夜一区二区三区| 亚洲视频小说图片| 国产精品色在线| 激情成人午夜视频| 中文字幕精品在线不卡| 欧美日韩国产免费一区二区| 欧美在线制服丝袜| 精久久久久久久久久久| 国产一区二区精品久久99| 国产精品久久久久久久久动漫 | 免费欧美在线视频| 国产午夜精品一区二区三区嫩草| 欧美成人三级在线| 精品日韩99亚洲| 欧美一级在线免费| 欧美国产日韩一二三区| www激情久久| 日韩一级片在线观看| 五月开心婷婷久久| 国产精品丝袜久久久久久app| 精品人在线二区三区| 国产精品免费av| 国产精品日产欧美久久久久| 亚洲一区二区三区在线播放| 久久久久久亚洲综合影院红桃| 久久久久99精品一区| 欧美激情一区二区三区四区| 中文字幕字幕中文在线中不卡视频| 一区二区三区中文在线观看| 成人激情小说乱人伦| 亚洲电影中文字幕在线观看| 亚洲欧美另类久久久精品| 六月丁香综合在线视频| 国产成人啪免费观看软件| 色欧美日韩亚洲| 国产精品1区2区3区在线观看| 欧美日韩美少妇| 欧美日韩综合不卡| 91在线丨porny丨国产| 成人午夜电影久久影院| 日韩一区二区在线观看视频 | 中文在线免费一区三区高中清不卡|