该 INNODB_METRICS
表提供了大量 InnoDB
性能信息,补充了针对 InnoDB
的 Performance Schema 表的特定关注领域。通过简单的查询,您可以检查系统的整体运行状况。通过更详细的查询,您可以诊断性能瓶颈、资源短缺和应用程序问题等问题。
每个监控器都代表 InnoDB
源代码中的一点,该点经过检测以收集计数器信息。每个计数器都可以启动、停止和重置。您也可以使用它们通用的模块名称对一组计数器执行这些操作。
默认情况下,收集的数据很少。要启动、停止和重置计数器,请设置以下系统变量之一:innodb_monitor_enable
、innodb_monitor_disable
、innodb_monitor_reset
或 innodb_monitor_reset_all
,使用计数器的名称、模块的名称、使用 “%” 字符进行匹配的名称或特殊关键字 all
。
有关用法信息,请参阅 第 17.15.6 节,“InnoDB INFORMATION_SCHEMA 指标表”。
该 INNODB_METRICS
表具有以下列
NAME
计数器的唯一名称。
SUBSYSTEM
指标所适用的
InnoDB
方面。COUNT
启用计数器以来的值。
MAX_COUNT
启用计数器以来的最大值。
MIN_COUNT
启用计数器以来的最小值。
AVG_COUNT
启用计数器以来的平均值。
COUNT_RESET
上次重置以来的计数器值。(
_RESET
列就像秒表的圈数计数器:您可以测量某个时间段内的活动,同时累计数字仍然可以在COUNT
、MAX_COUNT
等中获得。)MAX_COUNT_RESET
上次重置以来的最大计数器值。
MIN_COUNT_RESET
上次重置以来的最小计数器值。
AVG_COUNT_RESET
上次重置以来的平均计数器值。
TIME_ENABLED
上次启动的时间戳。
TIME_DISABLED
上次停止的时间戳。
TIME_ELAPSED
计数器启动以来的经过时间(以秒为单位)。
TIME_RESET
上次重置的时间戳。
STATUS
计数器是否仍在运行 (
enabled
) 还是已停止 (disabled
)。TYPE
项目是累计计数器,还是衡量某些资源的当前值。
COMMENT
计数器描述。
示例
mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME='dml_inserts'\G
*************************** 1. row ***************************
NAME: dml_inserts
SUBSYSTEM: dml
COUNT: 3
MAX_COUNT: 3
MIN_COUNT: NULL
AVG_COUNT: 0.046153846153846156
COUNT_RESET: 3
MAX_COUNT_RESET: 3
MIN_COUNT_RESET: NULL
AVG_COUNT_RESET: NULL
TIME_ENABLED: 2014-12-04 14:18:28
TIME_DISABLED: NULL
TIME_ELAPSED: 65
TIME_RESET: NULL
STATUS: enabled
TYPE: status_counter
COMMENT: Number of rows inserted
注释
您必须具有
PROCESS
权限才能查询此表。使用
INFORMATION_SCHEMA
COLUMNS
表或SHOW COLUMNS
语句来查看有关此表列的更多信息,包括数据类型和默认值。事务计数器
COUNT
值可能与 Performance SchemaEVENTS_TRANSACTIONS_SUMMARY
表中报告的事务事件数不同。InnoDB
仅计算它执行的事务,而 Performance Schema 会收集服务器启动的所有未中止事务的事件,包括空事务。