25.12.15.1 await 事件摘要 table

性能架构维护用于收集当前和最近 await 事件的 table,并将该信息汇总到摘要 table 中。 第 25.12.4 节“性能架构 await 事件 table”描述了 await 摘要所基于的事件。请参阅该讨论以获取有关 await 事件的内容,当前和最近的 await 事件 table 以及如何控制 await 事件收集(默认情况下已禁用)的信息。

示例 await 事件摘要信息:

mysql> SELECT *
       FROM performance_schema.events_waits_summary_global_by_event_name\G
...
*************************** 6. row ***************************
    EVENT_NAME: wait/synch/mutex/sql/BINARY_LOG::LOCK_index
    COUNT_STAR: 8
SUM_TIMER_WAIT: 2119302
MIN_TIMER_WAIT: 196092
AVG_TIMER_WAIT: 264912
MAX_TIMER_WAIT: 569421
...
*************************** 9. row ***************************
    EVENT_NAME: wait/synch/mutex/sql/hash_filo::lock
    COUNT_STAR: 69
SUM_TIMER_WAIT: 16848828
MIN_TIMER_WAIT: 0
AVG_TIMER_WAIT: 244185
MAX_TIMER_WAIT: 735345
...

每个 await 事件摘要 table 都有一个或多个分组列,以指示该 table 如何聚合事件。事件名称是指setup_instrumentstable 中事件工具的名称:

每个 await 事件摘要 table 的以下摘要列均包含汇总值:

  • COUNT_STAR

摘要事件的数量。该值包括所有事件,无论是定时事件还是非定时事件。

  • SUM_TIMER_WAIT

汇总定时事件的总 await 时间。该值仅针对定时事件计算,因为非定时事件的 await 时间为NULL。其他xxx_TIMER_WAIT值也是如此。

  • MIN_TIMER_WAIT

汇总定时事件的最短 await 时间。

  • AVG_TIMER_WAIT

摘要定时事件的平均 await 时间。

  • MAX_TIMER_WAIT

摘要定时事件的最大 await 时间。

TRUNCATE TABLE允许用于 await 摘要 table。它具有以下效果:

  • 对于未按帐户,主机或用户聚合的摘要 table,截断会将摘要列重置为零,而不是删除行。

  • 对于按帐户,主机或用户聚合的摘要 table,截断将删除无连接的帐户,主机或用户的行,并将其余行的摘要列重置为零。

此外,由帐户,主机,用户或线程聚合的每个 await 摘要 table 都将通过其依赖的连接 table 的截断或events_waits_summary_global_by_event_name的截断而隐式地截断。有关详细信息,请参见第 25.12.8 节“性能架构连接 table”