24.32.3 INFORMATION_SCHEMA INNODB_BUFFER_POOL_STATStable

INNODB_BUFFER_POOL_STATStable 提供了与显示引擎的 INNODB 状态输出中提供的大部分相同的缓冲池信息。使用InnoDB缓冲池服务器状态变量也可以获取很多相同的信息。

在缓冲池中使页面“年轻”或“不年轻”的想法是指在缓冲池数据结构的头尾处的sublists之间传输它们。标记为“年轻”的页面需要更长的时间才能从缓冲池中删除,而标记为“不年轻”的页面则移动到更接近eviction的位置。

有关相关用法信息和示例,请参见第 14.16.5 节“ InnoDB INFORMATION_SCHEMA 缓冲池 table”

INNODB_BUFFER_POOL_STATStable 具有以下列:

  • POOL_ID

缓冲池 ID。这是区分多个缓冲池实例的标识符。

  • POOL_SIZE

InnoDB缓冲池大小(以页为单位)。

  • FREE_BUFFERS

InnoDB缓冲池中的可用页数。

  • DATABASE_PAGES

InnoDB缓冲池中包含数据的页数。此数字包括脏页和干净页。

  • OLD_DATABASE_PAGES

old缓冲池子列 table 中的页数。

  • MODIFIED_DATABASE_PAGES

已修改(脏)数据库页面的数量。

  • PENDING_DECOMPRESS

await 减压的页面数。

  • PENDING_READS

暂挂读取的数量。

  • PENDING_FLUSH_LRU

LRU 中 await 刷新的页面数。

  • PENDING_FLUSH_LIST

刷新列 table 中 await 刷新的页面数。

  • PAGES_MADE_YOUNG

年轻的页面数。

  • PAGES_NOT_MADE_YOUNG

不使页面年轻的页面数。

  • PAGES_MADE_YOUNG_RATE

每秒变年轻的页面数(自上次打印输出/经过时间以来变年轻的页面)。

  • PAGES_MADE_NOT_YOUNG_RATE

每秒未打印的页面数(自上次打印输出/经过时间以来未打印过的页面)。

  • NUMBER_PAGES_READ

读取的页数。

  • NUMBER_PAGES_CREATED

创建的页面数。

  • NUMBER_PAGES_WRITTEN

写入的页数。

  • PAGES_READ_RATE

每秒读取的页数(自上次打印输出/经过时间以来读取的页数)。

  • PAGES_CREATE_RATE

每秒创建的页面数(自上次打印输出/经过时间以来创建的页面)。

  • PAGES_WRITTEN_RATE

每秒写入的页数(自上次打印输出/经过时间以来写入的页数)。

  • NUMBER_PAGES_GET

逻辑读取请求的数量。

  • HIT_RATE

缓冲池命中率。

  • YOUNG_MAKE_PER_THOUSAND_GETS

每千次获取年轻页面的数量。

  • NOT_YOUNG_MAKE_PER_THOUSAND_GETS

每千次获取不年轻的页面数。

  • NUMBER_PAGES_READ_AHEAD

预读的页数。

  • NUMBER_READ_AHEAD_EVICTED

由预读后台线程读入InnoDB缓冲池的页面数,这些页面随后在没有被查询访问的情况下被逐出。

  • READ_AHEAD_RATE

每秒的预读速率(自上次打印输出以来经过的页面/时间)。

  • READ_AHEAD_EVICTED_RATE

每秒无访问权限而被逐出的预读页面数(自上次打印输出/经过时间以来未访问过的预读页面)。

  • LRU_IO_TOTAL

LRU I/O 总数。

  • LRU_IO_CURRENT

当前间隔的 LRU I/O。

  • UNCOMPRESS_TOTAL

解压缩的页面总数。

  • UNCOMPRESS_CURRENT

在当前间隔中解压缩的页面数。

Example

mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_BUFFER_POOL_STATS\G
*************************** 1. row ***************************
                         POOL_ID: 0
                       POOL_SIZE: 8192
                    FREE_BUFFERS: 1
                  DATABASE_PAGES: 8085
              OLD_DATABASE_PAGES: 2964
         MODIFIED_DATABASE_PAGES: 0
              PENDING_DECOMPRESS: 0
                   PENDING_READS: 0
               PENDING_FLUSH_LRU: 0
              PENDING_FLUSH_LIST: 0
                PAGES_MADE_YOUNG: 22821
            PAGES_NOT_MADE_YOUNG: 3544303
           PAGES_MADE_YOUNG_RATE: 357.62602199870594
       PAGES_MADE_NOT_YOUNG_RATE: 0
               NUMBER_PAGES_READ: 2389
            NUMBER_PAGES_CREATED: 12385
            NUMBER_PAGES_WRITTEN: 13111
                 PAGES_READ_RATE: 0
               PAGES_CREATE_RATE: 0
              PAGES_WRITTEN_RATE: 0
                NUMBER_PAGES_GET: 33322210
                        HIT_RATE: 1000
    YOUNG_MAKE_PER_THOUSAND_GETS: 18
NOT_YOUNG_MAKE_PER_THOUSAND_GETS: 0
         NUMBER_PAGES_READ_AHEAD: 2024
       NUMBER_READ_AHEAD_EVICTED: 0
                 READ_AHEAD_RATE: 0
         READ_AHEAD_EVICTED_RATE: 0
                    LRU_IO_TOTAL: 0
                  LRU_IO_CURRENT: 0
                UNCOMPRESS_TOTAL: 0
              UNCOMPRESS_CURRENT: 0

Notes

  • 该 table 主要用于 maven 级的性能监控,或者在为 MySQL 开发与性能相关的扩展时很有用。

  • 您必须具有PROCESS特权才能查询此 table。

  • 使用INFORMATION_SCHEMA COLUMNStable 或SHOW COLUMNS语句查看有关此 table 列的其他信息,包括数据类型和默认值。