国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL內InnoDB數據頁的原理是什么

2024-07-24 12:33:40
字體:
來源:轉載
供稿:網友
  MySQL中InnoDB數據頁的原理是什么,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
 
  數據頁結構的快速瀏覽
  數據頁代表的這塊16KB大小的存儲空間可以被劃分為多個部分,不同部分有不同的功能,各個部分如圖所示:
 
  一個InnoDB數據頁的存儲空間大致被劃分成了7個部分,有的部分占用的字節數是確定的,有的部分占用的字節數是不確定的。下邊我們用表格的方式來大致描述一下這7個部分都存儲一些啥內容(快速的瞅一眼就行了,后邊會詳細嘮叨的):
 
  名稱 中文名 占用空間大小 簡單描述
  File Header 文件頭部 38字節 頁的一些通用信息
  Page Header 頁面頭部 56字節 數據頁專有的一些信息
  Infimum + Supremum 最小記錄和最大記錄 26字節 兩個虛擬的行記錄
  User Records 用戶記錄 不確定 實際存儲的行記錄內容
  Free Space 空閑空間 不確定 頁中尚未使用的空間
  Page Directory 頁面目錄 不確定 頁中的某些記錄的相對位置
  File Trailer 文件尾部 8字節 校驗頁是否完整
  記錄在頁中的存儲
 
  在頁的7個組成部分中,我們自己存儲的記錄會按照我們指定的行格式存儲到User Records部分。但是在一開始生成頁的時候,其實并沒有User Records這個部分,每當我們插入一條記錄,都會從Free Space部分,也就是尚未使用的存儲空間中申請一個記錄大小的空間劃分到User Records部分,當Free Space部分的空間全部被User Records部分替代掉之后,也就意味著這個頁使用完了,如果還有新的記錄插入的話,就需要去申請新的頁了,這個過程的圖示如下:
  
  為了更好的管理在User Records中的這些記錄,InnoDB可費了一番力氣呢,在哪費力氣了呢?不就是把記錄按照指定的行格式一條一條擺在User Records部分么?其實這話還得從記錄行格式的記錄頭信息中說起。

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 开鲁县| 新巴尔虎左旗| 通海县| 定边县| 天气| 沙坪坝区| 那曲县| 高密市| 博乐市| 长春市| 民丰县| 彰化市| 姜堰市| 广德县| 响水县| 巴楚县| 德清县| 乐平市| 阜康市| 顺昌县| 盐源县| 平阴县| 昭平县| 宿迁市| 重庆市| 调兵山市| 清流县| 太湖县| 新民市| 安图县| 景宁| 宜宾市| 万山特区| 共和县| 泸州市| 石台县| 奉化市| 巴彦淖尔市| 沈阳市| 隆林| 陆河县|