ITPub博客

首页 > 数据库 > > 24.3 INFORMATION_SCHEMA InnoDB 表

24.3 INFORMATION_SCHEMA InnoDB 表

作者:飘絮絮絮丶 时间:2020-05-11 11:03:46 0 删除 编辑

参考官方文档:
dev.mysql.com/doc/refma


  • INNODB_BUFFER_POOL_STATS 表

INNODB_BUFFER_POOL_STATS表提供了SHOW ENGINE INNODB STATUS输出中提供的大部分相同的缓冲池信息。 使用InnoDB缓冲池服务器状态变量也可以获得大部分相同的信息


在缓冲池中创建页面“年轻”或“不年轻”的想法是指在缓冲池数据结构的头部和尾部的子列表之间传送它们。 “年轻”的页面需要更长的时间才能从缓冲池中老化,而“不年轻”的页面会更加接近驱逐点。


INNODB_BUFFER_POOL_STATS表包含以下列:


    • POOL_ID

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


    • POOL_SIZE

在页面中的 InnoDB 缓存池大小


    • FREE_BUFFERS

InnoDB缓冲池中的空闲页数。


    • DATABASE_PAGES

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

    • NUMBER_PAGES_CREATED



页面被创建的数量


    • NUMBER_PAGES_WRITTEN

写页面的数量


    • HIT_RATE

buffer pool 命中率




你需要PROCESS 权限来查询这个表,可以使用COLUMNS表来查询这个表上字段的详细信息和数据类型。


  • INNODB_METRICS 表



INNODB_METRICS表提供了各种InnoDB性能信息。 通过简单的查询,您可以检查系统的整体运行状况。 通过更详细的查询,您可以诊断性能瓶颈,资源短缺和应用程序等问题。


每个监视器代表InnoDB源代码中的一个点,该源代码用于收集计数器信息。 每个计数器都可以启动,停止和重置。 您还可以使用公共模块名称为一组计数器执行这些操作。




默认情况下,收集的数据相对较少。 要启动,停止和重置计数器,请使用计数器名称,模块名称,使用“%”字符对此类名称进行通配符匹配,来设置系统变量innodb_monitor_enable,innodb_monitor_disable,innodb_monitor_reset或innodb_monitor_reset_all 的其中一个 ,或特殊关键字all。




INNODB_METRICS表包含以下列:


    • name

计数器的唯一名称


    • count

计数器自启动以来的值


    • MAX_COUNT

自计数器启用以来的最大值。


    • AVG_COUNT



自计数器启用以来的平均值


    • STATUS

计数器是否仍在运行( enabled)或停止( disabled)。


    • TYPE

这个条目是累加的计数器,或者衡量某些资源的当前值。


注意:需要有PROCESS权限查询这个表



  • INNODB_TRX



INNODB_TRX表提供当前在InnoDB内执行的每个事务的相关(不包括只读事务)信息,包括事务是否在等待锁定,事务何时启动以及事务正在执行的SQL语句(如果有)。


INNODB_TRX 表有下列字段:

    • TRX_ID

InnoDB内部的唯一事务ID号。 不会为只读事务创建这些ID并且不会锁定


    • TRX_WEIGHT



事务的权重,反映更改的行数和事务锁定的行数(不一定是确切的计数)。 为了解决死锁,InnoDB选择具有最小权重的事务作为回滚的“受害者”。 无论更改和锁定行的数量如何,已更改非事务表的事务都被认为比其他事务有更高权重。


    • TRX_STARTED

事务开始事件

    • TRX_STATE

事务执行状态。 允许的值为RUNNING,LOCK WAIT,ROLLING BACK和COMMITTING。


    • TRX_REQUESTED_LOCK_ID



如果TRX_STATE 是 LOCK WAIT,则是事务当前等待的锁的ID;否则为NULL。要获取有关锁的详细信息,请使用INNODB_LOCKS表的LOCK_ID列连接此列。

    • TRX_WAIT_STARTED

如果TRX_STATE 是 LOCK WAIT,则这个时间是事务开始等待锁的时间;否则为NULL


    • TRX_QUERY

事务正在执行的SQL语句。


    • TRX_OPERATION_STATE



交易的当前操作,如果有的话; 否则为NULL。


    • TRX_TABLES_LOCKED



当前SQL语句具有行锁定的InnoDB表的数量。 (因为这些是行锁,而不是表锁,所以通常仍可以通过多个事务读取和写入表,尽管某些行被锁定。)

    • TRX_LOCK_STRUCTS

事务缩保留的锁数

    • TRX_ROWS_LOCKED

此事务锁定的大致行数。 该值可能包括实际存在但对事务不可见的被标记删除的行。

    • TRX_ROWS_MODIFIED

此事务中已修改和插入的行数。


    • TRX_ISOLATION_LEVEL

当前事务的隔离级别。


    • TRX_UNIQUE_CHECKS



是否为当前事务打开或关闭唯一检查。 例如,在批量数据加载期间可能会关闭它们。

    • TRX_FOREIGN_KEY_CHECKS



是否为当前事务打开或关闭外键检查。 例如,在批量数据加载期间可能会关闭它们。

    • TRX_IS_READ_ONLY

值是1表示事务是只读事务


    • TRX_AUTOCOMMIT_NON_LOCKING



值为1表示事务是一个SELECT语句,它不使用FOR UPDATE或LOCK IN SHARED MODE子句,并且在启用自动提交的情况下执行,因此事务将只包含这一个语句。 当此列和TRX_IS_READ_ONLY都为1时,InnoDB会优化事务以减少与更改表数据事务的相关开销。


注意:要有PROCESS权限才能查询这个表

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69946831/viewspace-3163987/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: ES中的MR
请登录后发表评论 登录
全部评论

注册时间:2019-09-09

  • 博文量
    2646
  • 访问量
    42570