文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  INFORMATION_SCHEMA INNODB_BUFFER_PAGE 表格

28.4.2 INFORMATION_SCHEMA INNODB_BUFFER_PAGE 表格

INNODB_BUFFER_PAGE 表格提供關於 InnoDB 緩衝池中每個頁面的資訊。

關於相關的使用資訊與範例,請參閱第 17.15.5 節,「InnoDB INFORMATION_SCHEMA 緩衝池表格」

警告

查詢 INNODB_BUFFER_PAGE 表格可能會影響效能。除非您知道效能影響並確定它是可以接受的,否則請勿在生產系統上查詢此表格。為了避免影響生產系統的效能,請重現您要調查的問題,並在測試執行個體上查詢緩衝池統計資料。

INNODB_BUFFER_PAGE 表格具有下列欄位

  • POOL_ID

    緩衝池 ID。這是一個用於區分多個緩衝池執行個體的識別碼。

  • BLOCK_ID

    緩衝池區塊 ID。

  • SPACE

    表格空間 ID;與 INNODB_TABLES.SPACE 的值相同。

  • PAGE_NUMBER

    頁面編號。

  • PAGE_TYPE

    頁面類型。下表顯示允許的值。

    表格 28.4 INNODB_BUFFER_PAGE.PAGE_TYPE 值

    頁面類型 描述
    ALLOCATED 新配置的頁面
    BLOB 未壓縮的 BLOB 頁面
    COMPRESSED_BLOB2 後續的壓縮 BLOB 頁面
    COMPRESSED_BLOB 第一個壓縮的 BLOB 頁面
    ENCRYPTED_RTREE 加密的 R 樹
    EXTENT_DESCRIPTOR 範圍描述元頁面
    FILE_SPACE_HEADER 檔案空間標頭
    FIL_PAGE_TYPE_UNUSED 未使用
    IBUF_BITMAP 插入緩衝區點陣圖
    IBUF_FREE_LIST 插入緩衝區可用清單
    IBUF_INDEX 插入緩衝區索引
    INDEX B 樹節點
    INODE 索引節點
    LOB_DATA 未壓縮的 LOB 資料
    LOB_FIRST 未壓縮 LOB 的第一頁
    LOB_INDEX 未壓縮的 LOB 索引
    PAGE_IO_COMPRESSED 壓縮頁面
    PAGE_IO_COMPRESSED_ENCRYPTED 壓縮且加密的頁面
    PAGE_IO_ENCRYPTED 加密頁面
    RSEG_ARRAY 回滾區段陣列
    RTREE_INDEX R 樹索引
    SDI_BLOB 未壓縮的 SDI BLOB
    SDI_COMPRESSED_BLOB 壓縮的 SDI BLOB
    SDI_INDEX SDI 索引
    SYSTEM 系統頁面
    TRX_SYSTEM 交易系統資料
    UNDO_LOG 復原記錄頁面
    UNKNOWN 未知
    ZLOB_DATA 壓縮的 LOB 資料
    ZLOB_FIRST 壓縮的 LOB 第一頁
    ZLOB_FRAG 壓縮的 LOB 片段
    ZLOB_FRAG_ENTRY 壓縮的 LOB 片段索引
    ZLOB_INDEX 壓縮的 LOB 索引

  • FLUSH_TYPE

    刷新類型。

  • FIX_COUNT

    在緩衝池中使用此區塊的執行緒數量。當為零時,此區塊即可被逐出。

  • IS_HASHED

    是否已在此頁面上建置雜湊索引。

  • NEWEST_MODIFICATION

    最年輕修改的日誌序號。

  • OLDEST_MODIFICATION

    最舊修改的日誌序號。

  • ACCESS_TIME

    用於判斷頁面第一次存取時間的抽象數字。

  • TABLE_NAME

    頁面所屬的表格名稱。此欄位僅適用於 PAGE_TYPE 值為 INDEX 的頁面。如果伺服器尚未存取表格,則此欄位為 NULL

  • INDEX_NAME

    頁面所屬的索引名稱。這可以是叢集索引或次要索引的名稱。此欄位僅適用於 PAGE_TYPE 值為 INDEX 的頁面。

  • NUMBER_RECORDS

    頁面內的記錄數。

  • DATA_SIZE

    記錄大小的總和。此欄位僅適用於 PAGE_TYPE 值為 INDEX 的頁面。

  • COMPRESSED_SIZE

    壓縮的頁面大小。對於未壓縮的頁面為 NULL

  • PAGE_STATE

    頁面狀態。下表顯示允許的值。

    表格 28.5 INNODB_BUFFER_PAGE.PAGE_STATE 值

    頁面狀態 描述
    FILE_PAGE 已緩衝的檔案頁面
    MEMORY 包含主記憶體物件
    NOT_USED 位於可用清單中
    NULL 乾淨的壓縮頁面、刷新列表中的壓縮頁面、用作緩衝池監視哨的頁面
    READY_FOR_USE (準備使用) 一個空閒頁面
    REMOVE_HASH (移除雜湊) 在放入空閒列表之前,應移除雜湊索引

  • IO_FIX

    此頁面是否有任何 I/O 正在等待:IO_NONE = 沒有等待的 I/O,IO_READ = 讀取正在等待,IO_WRITE = 寫入正在等待,IO_PIN = 不允許重新定位和從刷新列表中移除。

  • IS_OLD (是否為舊)

    區塊是否在 LRU 列表中舊區塊的子列表中。

  • FREE_PAGE_CLOCK (空閒頁面時鐘)

    當區塊最後一次放置在 LRU 列表頭部時,freed_page_clock 計數器的值。freed_page_clock 計數器追蹤從 LRU 列表末尾移除的區塊數量。

  • IS_STALE (是否過時)

    頁面是否過時。

範例

mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_PAGE LIMIT 1\G
*************************** 1. row ***************************
            POOL_ID: 0
           BLOCK_ID: 0
              SPACE: 97
        PAGE_NUMBER: 2473
          PAGE_TYPE: INDEX
         FLUSH_TYPE: 1
          FIX_COUNT: 0
          IS_HASHED: YES
NEWEST_MODIFICATION: 733855581
OLDEST_MODIFICATION: 0
        ACCESS_TIME: 3378385672
         TABLE_NAME: `employees`.`salaries`
         INDEX_NAME: PRIMARY
     NUMBER_RECORDS: 468
          DATA_SIZE: 14976
    COMPRESSED_SIZE: 0
         PAGE_STATE: FILE_PAGE
             IO_FIX: IO_NONE
             IS_OLD: YES
    FREE_PAGE_CLOCK: 66
           IS_STALE: NO

注意事項

  • 此表主要用於專家級效能監控,或為 MySQL 開發與效能相關的擴充功能時。

  • 您必須擁有 PROCESS 權限才能查詢此表。

  • 使用 INFORMATION_SCHEMA COLUMNS 表或 SHOW COLUMNS 陳述式,以檢視此表的其他欄位資訊,包括資料類型和預設值。

  • 當刪除表格、表格列、分割區或索引時,相關的頁面會保留在緩衝池中,直到需要空間來儲存其他資料為止。INNODB_BUFFER_PAGE 表會報告這些頁面的相關資訊,直到它們從緩衝池中被逐出。如需更多關於 InnoDB 如何管理緩衝池資料的資訊,請參閱 第 17.5.1 節,「緩衝池」