Documentation Home

22.12.9.1 等待事件汇总表

Performance Schema 维护用于收集当前和最近等待事件的表,并在汇总表中聚合该信息。 第 22.12.4 节,“性能模式等待事件表”描述了等待摘要所基于的事件。有关等待事件的内容、当前和最近的等待事件表以及如何控制默认情况下禁用的等待事件收集的信息,请参阅该讨论。

示例等待事件摘要信息:

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
...

每个等待事件汇总表都有一个或多个分组列来指示该表如何聚合事件。事件名称参考 setup_instruments表中事件工具的名称:

每个等待事件摘要表都有这些包含聚合值的摘要列:

  • COUNT_STAR

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

  • SUM_TIMER_WAIT

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

  • MIN_TIMER_WAIT

    汇总定时事件的最短等待时间。

  • AVG_TIMER_WAIT

    汇总的定时事件的平均等待时间。

  • MAX_TIMER_WAIT

    汇总定时事件的最大等待时间。

TRUNCATE TABLE允许等待汇总表。它具有以下效果:

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

  • 对于按账户、主机或用户聚合的汇总表,截断会删除没有连接的账户、主机或用户的行,并将剩余行的汇总列重置为零。

此外,每个按帐户、主机、用户或线程聚合的等待汇总表都会通过截断它所依赖的连接表或截断 events_waits_summary_global_by_event_name. 有关详细信息,请参阅 第 22.12.7 节,“性能模式连接表”