28.4.21 INFORMATION_SCHEMA INNODB_ METRICS 表
表INNODB_METRICS提供了广泛的InnoDB性能信息,补充了对InnoDB的性能Schema表的特定关注领域。使用简单查询,您可以检查系统的整体健康状况。使用更详细的查询,您可以诊断问题,如性能瓶颈、资源不足和应用程序问题。
每个监控器都代表InnoDB源代码中的一个点,该点被instrumented以收集计数信息。每个计数器都可以启动、停止和重置。您还可以对一组计数器使用它们的共同模块名称进行这些操作。
默认情况下,收集的数据很少。要启动、停止和重置计数器,请设置一个系统变量innodb_monitor_enable、innodb_monitor_disable、innodb_monitor_reset或innodb_monitor_reset_all,使用计数器的名称、模块名称、通配符匹配该名称的名称(使用“%”字符)或特殊关键字all。
使用信息,请见第17.15.6节,“InnoDB INFORMATION_SCHEMA Metrics Table”。
INNODB_METRICS 表具有以下列:
-
NAME计数器的唯一名称。
-
SUBSYSTEMInnoDB 的某个方面,该指标适用于该方面。
-
COUNT自启用计数器以来,计数器的值。
-
MAX_COUNT自启用计数器以来,计数器的最大值。
-
MIN_COUNT自启用计数器以来,计数器的最小值。
-
AVG_COUNT自启用计数器以来,计数器的平均值。
-
COUNT_RESET自最后一次重置以来,计数器的值。(_RESET 列类似于 stopwatch 的 lap 计数器:您可以在某个时间间隔内测量活动,同时累积的数字仍然可用在
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_ SCHEMACOLUMNS表或SHOW COLUMNS语句来查看该表的列信息,包括数据类型和默认值。 -
事务计数器
COUNT值可能与性能架构EVENTS_ TRANSACTIONS_SUMMARY表中的事务事件报告不同。InnoDB只统计它执行的交易,而性能架构收集的是服务器启动的所有非中止的事务,包括空事务。