【MYSQL】InnoDB行溢出數(shù)據(jù)說明-創(chuàng)新互聯(lián)

&nbs

創(chuàng)新互聯(lián)公司是一家專業(yè)提供梅列企業(yè)網(wǎng)站建設,專注與網(wǎng)站制作、做網(wǎng)站、H5場景定制、小程序制作等業(yè)務。10年已為梅列眾多企業(yè)、政府機構等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設計公司優(yōu)惠進行中。p;   首先說下MySQL數(shù)據(jù)庫的varchar字段,真的很實用,它可以存放65536字節(jié)的數(shù)據(jù),比oracle和sqlserver大多了,但是在使用varchar時也有幾點要注意;
    1、65536只是這么說,要建表的時候指定一個字段65536仍然會報錯,因為字段本身還有其他開銷,實際只能存放65532字節(jié)。
    2、65532字節(jié)并不是每個varchar字段都可以設置的,他是一個總和,也就是說如果有2個varchar字段的表,那么每個varchar字段只能設置65532/2的值。
    3、建表時要注意編碼格式哦,varchar(65532)代表的是字節(jié)數(shù),如果使用GBK或者UTF-8那就無法建立成功了,因為GBK一個字符占用2字節(jié),UTF-8一個字符占用3字節(jié)
    以上概念比較簡單,大家建個表試驗一下就好,這里不再做實驗;大家知道,頁(PAGE)是innoDB存儲引擎的最小存儲單位,默認大小為16KB,及16384字節(jié),行數(shù)據(jù)存儲在頁中;那么一行數(shù)據(jù)如果超過了一個頁能夠存儲的大小怎么辦?比如上面說的varchar(65532),65532字節(jié)該如何存儲?這個時候就會發(fā)生行溢出。
行溢出
    InnoDB存儲引擎可以將一條記錄中的某些數(shù)據(jù)存儲在真正的數(shù)據(jù)頁面之外,一般為BLOB\LOB這類的大對象列類型。但是也不是絕對,BLOB可以不將數(shù)據(jù)放在溢出頁面,而且即便是VARCHAR列數(shù)據(jù)類型,依然有可能被存放為行溢出數(shù)據(jù),比如上例
    我們執(zhí)行:insert into 表名 select repeat('a',65532),就將一行65532字節(jié)的數(shù)據(jù)插入到表中了,實際上在底層,真正的數(shù)據(jù)頁只存儲了一小部分數(shù)據(jù),之后是偏移量,指向行溢出數(shù)據(jù),這時會產(chǎn)生N個未壓縮的二進制大對象頁 Uncompressed BLOB Page,這些大對象頁中才是完整存放了65532字節(jié)的數(shù)據(jù)。
    那么,一行數(shù)據(jù)為多大時,會發(fā)生行溢出呢?我們知道InnoDB存儲引擎表是索引組織的,即B+樹結構,這樣一個頁中至少要保證有2條數(shù)據(jù),否則就變成鏈表了,如果只能存放一條數(shù)據(jù),那么InnoDB存儲引擎會自動將它存放在溢出頁中。如果可以在一個頁中至少放入兩行數(shù)據(jù),那么就不會發(fā)生行溢出

    其實對于BLOB類型的數(shù)據(jù),跟varchar也是一個道理,要看實際的大小,當然,用戶既然使用了blob列類型,一般不可能存放長度過小的數(shù)據(jù),因此在大多數(shù)情況下BLOB的行數(shù)據(jù)還是會發(fā)生行溢出,實際數(shù)據(jù)保存在BLOB頁中,數(shù)據(jù)頁只保存數(shù)據(jù)的前768字節(jié)。

文章標題:【MYSQL】InnoDB行溢出數(shù)據(jù)說明-創(chuàng)新互聯(lián)
新聞來源:http://m.kartarina.com/article38/ccigsp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、響應式網(wǎng)站網(wǎng)頁設計公司關鍵詞優(yōu)化、網(wǎng)站營銷、電子商務

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設網(wǎng)站維護公司
主站蜘蛛池模板: 麻豆亚洲AV成人无码久久精品| 亚无码乱人伦一区二区| 亚洲av永久无码一区二区三区| 久久亚洲精品无码VA大香大香| 无码中文字幕色专区| 国产色爽免费无码视频| 亚洲久热无码av中文字幕| 国产成人无码精品久久久小说| 亚洲一区无码中文字幕| 亚洲av无码久久忘忧草| av无码人妻一区二区三区牛牛| 无码精品蜜桃一区二区三区WW| 亚洲中文无码永久免| 精品人妻系列无码天堂| 亚洲AV无码乱码国产麻豆穿越 | 亚洲成a人无码亚洲成av无码| 亚洲国产成人精品无码久久久久久综合 | 亚洲AV日韩AV永久无码绿巨人| 好爽毛片一区二区三区四无码三飞 | 最新亚洲春色Av无码专区| 无码午夜成人1000部免费视频 | 国产精品无码av天天爽| 亚洲av永久无码精品国产精品| 亚洲欧洲日产国码无码久久99| 免费无码又爽又刺激高潮 | 无码av不卡一区二区三区| 岛国无码av不卡一区二区| 用舌头去添高潮无码视频| 日韩精品无码久久一区二区三| 无码人妻av一区二区三区蜜臀 | 久久精品无码一区二区日韩AV | 无码人妻精品中文字幕免费东京热| 国产高新无码在线观看| 国产午夜无码精品免费看| 无码国产亚洲日韩国精品视频一区二区三区 | 亚洲人成无码网站在线观看| 久久久无码一区二区三区| 亚洲av永久无码制服河南实里| 无码少妇一区二区性色AV| 亚洲AV区无码字幕中文色| 亚洲AV永久纯肉无码精品动漫|