<div id="docs-body">
 <div class="section">
  <div class="titlepage">
   <div>
    <div>
     <h3 class="title">
      <a name="information-schema-innodb-buffer-page-table">
      </a>
      28.4.2 The INFORMATION_SCHEMA INNODB_BUFFER_PAGE Table
     </h3>
    </div>
   </div>
  </div>
  <a class="indexterm" name="idm46045077795008">
  </a>
  <p>
   The
   <a class="link" href="information-schema-innodb-buffer-page-table.html" title="28.4.2 The INFORMATION_SCHEMA INNODB_BUFFER_PAGE Table">
    <code class="literal">
     INNODB_BUFFER_PAGE
    </code>
   </a>
   table provides
      information about each
   <a class="link" href="glossary.html#glos_page" title="page">
    page
   </a>
   in
      the
   <code class="literal">
    InnoDB
   </code>
   <a class="link" href="glossary.html#glos_buffer_pool" title="buffer pool">
    buffer pool
   </a>
   .
  </p>
  <p>
   For related usage information and examples, see
   <a class="xref" href="innodb-information-schema-buffer-pool-tables.html" title="17.15.5 InnoDB INFORMATION_SCHEMA Buffer Pool Tables">
    Section 17.15.5, “InnoDB INFORMATION_SCHEMA Buffer Pool Tables”
   </a>
   .
  </p>
  <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
   <div class="admon-title">
    Warning
   </div>
   <p>
    Querying the
    <a class="link" href="information-schema-innodb-buffer-page-table.html" title="28.4.2 The INFORMATION_SCHEMA INNODB_BUFFER_PAGE Table">
     <code class="literal">
      INNODB_BUFFER_PAGE
     </code>
    </a>
    table can affect performance. Do not query this table on a
        production system unless you are aware of the performance impact
        and have determined it to be acceptable. To avoid impacting
        performance on a production system, reproduce the issue you want
        to investigate and query buffer pool statistics on a test
        instance.
   </p>
  </div>
  <p>
   The
   <a class="link" href="information-schema-innodb-buffer-page-table.html" title="28.4.2 The INFORMATION_SCHEMA INNODB_BUFFER_PAGE Table">
    <code class="literal">
     INNODB_BUFFER_PAGE
    </code>
   </a>
   table has
      these columns:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      <code class="literal">
       POOL_ID
      </code>
     </p>
     <p>
      The buffer pool ID. This is an identifier to distinguish
          between multiple buffer pool instances.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       BLOCK_ID
      </code>
     </p>
     <p>
      The buffer pool block ID.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       SPACE
      </code>
     </p>
     <p>
      The tablespace ID; the same value as
      <code class="literal">
       INNODB_TABLES.SPACE
      </code>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       PAGE_NUMBER
      </code>
     </p>
     <p>
      The page number.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       PAGE_TYPE
      </code>
     </p>
     <p>
      The page type. The following table shows the permitted values.
     </p>
     <div class="table">
      <a name="innodb-information-schema-innodb_buffer_page_table-page-type">
      </a>
      <p class="title">
       <b>
        Table 28.4 INNODB_BUFFER_PAGE.PAGE_TYPE Values
       </b>
      </p>
      <div class="table-contents">
       <table summary="Mapping for interpreting INNODB_BUFFER_PAGE.PAGE_TYPE values.">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 30%"/>
        </colgroup>
        <thead>
         <tr>
          <th>
           Page Type
          </th>
          <th>
           Description
          </th>
         </tr>
        </thead>
        <tbody>
         <tr>
          <td>
           <code class="literal">
            ALLOCATED
           </code>
          </td>
          <td>
           Freshly allocated page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            BLOB
           </code>
          </td>
          <td>
           Uncompressed BLOB page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            COMPRESSED_BLOB2
           </code>
          </td>
          <td>
           Subsequent comp BLOB page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            COMPRESSED_BLOB
           </code>
          </td>
          <td>
           First compressed BLOB page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            ENCRYPTED_RTREE
           </code>
          </td>
          <td>
           Encrypted R-tree
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            EXTENT_DESCRIPTOR
           </code>
          </td>
          <td>
           Extent descriptor page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            FILE_SPACE_HEADER
           </code>
          </td>
          <td>
           File space header
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            FIL_PAGE_TYPE_UNUSED
           </code>
          </td>
          <td>
           Unused
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            IBUF_BITMAP
           </code>
          </td>
          <td>
           Insert buffer bitmap
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            IBUF_FREE_LIST
           </code>
          </td>
          <td>
           Insert buffer free list
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            IBUF_INDEX
           </code>
          </td>
          <td>
           Insert buffer index
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            INDEX
           </code>
          </td>
          <td>
           B-tree node
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            INODE
           </code>
          </td>
          <td>
           Index node
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            LOB_DATA
           </code>
          </td>
          <td>
           Uncompressed LOB data
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            LOB_FIRST
           </code>
          </td>
          <td>
           First page of uncompressed LOB
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            LOB_INDEX
           </code>
          </td>
          <td>
           Uncompressed LOB index
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            PAGE_IO_COMPRESSED
           </code>
          </td>
          <td>
           Compressed page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            PAGE_IO_COMPRESSED_ENCRYPTED
           </code>
          </td>
          <td>
           Compressed and encrypted page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            PAGE_IO_ENCRYPTED
           </code>
          </td>
          <td>
           Encrypted page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            RSEG_ARRAY
           </code>
          </td>
          <td>
           Rollback segment array
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            RTREE_INDEX
           </code>
          </td>
          <td>
           R-tree index
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            SDI_BLOB
           </code>
          </td>
          <td>
           Uncompressed SDI BLOB
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            SDI_COMPRESSED_BLOB
           </code>
          </td>
          <td>
           Compressed SDI BLOB
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            SDI_INDEX
           </code>
          </td>
          <td>
           SDI index
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            SYSTEM
           </code>
          </td>
          <td>
           System page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            TRX_SYSTEM
           </code>
          </td>
          <td>
           Transaction system data
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            UNDO_LOG
           </code>
          </td>
          <td>
           Undo log page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            UNKNOWN
           </code>
          </td>
          <td>
           Unknown
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            ZLOB_DATA
           </code>
          </td>
          <td>
           Compressed LOB data
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            ZLOB_FIRST
           </code>
          </td>
          <td>
           First page of compressed LOB
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            ZLOB_FRAG
           </code>
          </td>
          <td>
           Compressed LOB fragment
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            ZLOB_FRAG_ENTRY
           </code>
          </td>
          <td>
           Compressed LOB fragment index
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            ZLOB_INDEX
           </code>
          </td>
          <td>
           Compressed LOB index
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <div class="table-contents">
       <table cellpadding="0" cellspacing="0" style="position: fixed; top: 0px; display: none; left: 431px; width: 709px;">
        <thead>
         <tr>
          <th style="width: 365.062px;">
           Page Type
          </th>
          <th style="width: 342.938px;">
           Description
          </th>
         </tr>
        </thead>
       </table>
      </div>
     </div>
     <br class="table-break"/>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       FLUSH_TYPE
      </code>
     </p>
     <p>
      The flush type.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       FIX_COUNT
      </code>
     </p>
     <p>
      The number of threads using this block within the buffer pool.
          When zero, the block is eligible to be evicted.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       IS_HASHED
      </code>
     </p>
     <p>
      Whether a hash index has been built on this page.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       NEWEST_MODIFICATION
      </code>
     </p>
     <p>
      The Log Sequence Number of the youngest modification.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       OLDEST_MODIFICATION
      </code>
     </p>
     <p>
      The Log Sequence Number of the oldest modification.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       ACCESS_TIME
      </code>
     </p>
     <p>
      An abstract number used to judge the first access time of the
          page.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       TABLE_NAME
      </code>
     </p>
     <p>
      The name of the table the page belongs to. This column is
          applicable only to pages with a
      <code class="literal">
       PAGE_TYPE
      </code>
      value of
      <code class="literal">
       INDEX
      </code>
      . The column is
      <code class="literal">
       NULL
      </code>
      if the server has not yet accessed the
          table.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       INDEX_NAME
      </code>
     </p>
     <p>
      The name of the index the page belongs to. This can be the
          name of a clustered index or a secondary index. This column is
          applicable only to pages with a
      <code class="literal">
       PAGE_TYPE
      </code>
      value of
      <code class="literal">
       INDEX
      </code>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       NUMBER_RECORDS
      </code>
     </p>
     <p>
      The number of records within the page.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       DATA_SIZE
      </code>
     </p>
     <p>
      The sum of the sizes of the records. This column is applicable
          only to pages with a
      <code class="literal">
       PAGE_TYPE
      </code>
      value of
      <code class="literal">
       INDEX
      </code>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       COMPRESSED_SIZE
      </code>
     </p>
     <p>
      The compressed page size.
      <code class="literal">
       NULL
      </code>
      for pages
          that are not compressed.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       PAGE_STATE
      </code>
     </p>
     <p>
      The page state. The following table shows the permitted
          values.
     </p>
     <div class="table">
      <a name="innodb-information-schema-innodb_buffer_page_table-page-state">
      </a>
      <p class="title">
       <b>
        Table 28.5 INNODB_BUFFER_PAGE.PAGE_STATE Values
       </b>
      </p>
      <div class="table-contents">
       <table summary="Mapping for interpreting INNODB_BUFFER_PAGE.PAGE_STATE values.">
        <colgroup>
         <col style="width: 25%"/>
         <col style="width: 75%"/>
        </colgroup>
        <thead>
         <tr>
          <th>
           Page State
          </th>
          <th>
           Description
          </th>
         </tr>
        </thead>
        <tbody>
         <tr>
          <td>
           <code class="literal">
            FILE_PAGE
           </code>
          </td>
          <td>
           A buffered file page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            MEMORY
           </code>
          </td>
          <td>
           Contains a main memory object
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            NOT_USED
           </code>
          </td>
          <td>
           In the free list
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            NULL
           </code>
          </td>
          <td>
           Clean compressed pages, compressed pages in the flush list, pages used
                as buffer pool watch sentinels
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            READY_FOR_USE
           </code>
          </td>
          <td>
           A free page
          </td>
         </tr>
         <tr>
          <td>
           <code class="literal">
            REMOVE_HASH
           </code>
          </td>
          <td>
           Hash index should be removed before placing in the free list
          </td>
         </tr>
        </tbody>
       </table>
      </div>
     </div>
     <br class="table-break"/>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       IO_FIX
      </code>
     </p>
     <p>
      Whether any I/O is pending for this page:
      <code class="literal">
       IO_NONE
      </code>
      = no pending I/O,
      <code class="literal">
       IO_READ
      </code>
      = read pending,
      <code class="literal">
       IO_WRITE
      </code>
      = write pending,
      <code class="literal">
       IO_PIN
      </code>
      = relocation and removal from the
          flush not permitted.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       IS_OLD
      </code>
     </p>
     <p>
      Whether the block is in the sublist of old blocks in the LRU
          list.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       FREE_PAGE_CLOCK
      </code>
     </p>
     <p>
      The value of the
      <code class="literal">
       freed_page_clock
      </code>
      counter
          when the block was the last placed at the head of the LRU
          list. The
      <code class="literal">
       freed_page_clock
      </code>
      counter tracks
          the number of blocks removed from the end of the LRU list.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       IS_STALE
      </code>
     </p>
     <p>
      Whether the page is stale.
     </p>
    </li>
   </ul>
  </div>
  <h4>
   <a name="idm46045077618752">
   </a>
   Example
  </h4>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting language-sql"><div class="docs-select-all right" id="sa4716963"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-sql"><span class="token prompt">mysql&gt;</span> <span class="token keyword">SELECT</span> <span class="token operator">*</span> <span class="token keyword">FROM</span> INFORMATION_SCHEMA<span class="token punctuation">.</span>INNODB_BUFFER_PAGE <span class="token keyword">LIMIT</span> <span class="token number">1</span>\G
<span class="token output"><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span> 1. row <span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span><span class="token punctuation">*</span>
            POOL_ID<span class="token punctuation">:</span> 0
           BLOCK_ID<span class="token punctuation">:</span> 0
              SPACE<span class="token punctuation">:</span> 97
        PAGE_NUMBER<span class="token punctuation">:</span> 2473
          PAGE_TYPE<span class="token punctuation">:</span> INDEX
         FLUSH_TYPE<span class="token punctuation">:</span> 1
          FIX_COUNT<span class="token punctuation">:</span> 0
          IS_HASHED<span class="token punctuation">:</span> YES
NEWEST_MODIFICATION<span class="token punctuation">:</span> 733855581
OLDEST_MODIFICATION<span class="token punctuation">:</span> 0
        ACCESS_TIME<span class="token punctuation">:</span> 3378385672
         TABLE_NAME<span class="token punctuation">:</span> `employees`.`salaries`
         INDEX_NAME<span class="token punctuation">:</span> PRIMARY
     NUMBER_RECORDS<span class="token punctuation">:</span> 468
          DATA_SIZE<span class="token punctuation">:</span> 14976
    COMPRESSED_SIZE<span class="token punctuation">:</span> 0
         PAGE_STATE<span class="token punctuation">:</span> FILE_PAGE
             IO_FIX<span class="token punctuation">:</span> IO_NONE
             IS_OLD<span class="token punctuation">:</span> YES
    FREE_PAGE_CLOCK<span class="token punctuation">:</span> 66
           IS_STALE<span class="token punctuation">:</span> NO</span></code></pre>
  </div>
  <h4>
   <a name="idm46045077615760">
   </a>
   Notes
  </h4>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      This table is useful primarily for expert-level performance
          monitoring, or when developing performance-related extensions
          for MySQL.
     </p>
    </li>
    <li class="listitem">
     <p>
      You must have the
      <a class="link" href="privileges-provided.html#priv_process">
       <code class="literal">
        PROCESS
       </code>
      </a>
      privilege to query this table.
     </p>
    </li>
    <li class="listitem">
     <p>
      Use the
      <code class="literal">
       INFORMATION_SCHEMA
      </code>
      <a class="link" href="information-schema-columns-table.html" title="28.3.8 The INFORMATION_SCHEMA COLUMNS Table">
       <code class="literal">
        COLUMNS
       </code>
      </a>
      table or the
      <a class="link" href="show-columns.html" title="15.7.7.6 SHOW COLUMNS Statement">
       <code class="literal">
        SHOW COLUMNS
       </code>
      </a>
      statement to view
          additional information about the columns of this table,
          including data types and default values.
     </p>
    </li>
    <li class="listitem">
     <p>
      When tables, table rows, partitions, or indexes are deleted,
          associated pages remain in the buffer pool until space is
          required for other data. The
      <a class="link" href="information-schema-innodb-buffer-page-table.html" title="28.4.2 The INFORMATION_SCHEMA INNODB_BUFFER_PAGE Table">
       <code class="literal">
        INNODB_BUFFER_PAGE
       </code>
      </a>
      table reports
          information about these pages until they are evicted from the
          buffer pool. For more information about how the
      <code class="literal">
       InnoDB
      </code>
      manages buffer pool data, see
      <a class="xref" href="innodb-buffer-pool.html" title="17.5.1 Buffer Pool">
       Section 17.5.1, “Buffer Pool”
      </a>
      .
     </p>
    </li>
   </ul>
  </div>
 </div>
 <br/>
</div>
