Performance Schema 维护用于收集当前和最近事务事件的表,并在汇总表中聚合该信息。 第 25.12.7 节,“性能模式事务表” 描述了事务摘要所基于的事件。有关交易事件内容、当前和历史交易事件表以及如何控制默认情况下禁用的交易事件收集的信息,请参阅该讨论。
示例交易事件摘要信息:
mysql> SELECT *
FROM performance_schema.events_transactions_summary_global_by_event_name
LIMIT 1\G
*************************** 1. row ***************************
EVENT_NAME: transaction
COUNT_STAR: 5
SUM_TIMER_WAIT: 19550092000
MIN_TIMER_WAIT: 2954148000
AVG_TIMER_WAIT: 3910018000
MAX_TIMER_WAIT: 5486275000
COUNT_READ_WRITE: 5
SUM_TIMER_READ_WRITE: 19550092000
MIN_TIMER_READ_WRITE: 2954148000
AVG_TIMER_READ_WRITE: 3910018000
MAX_TIMER_READ_WRITE: 5486275000
COUNT_READ_ONLY: 0
SUM_TIMER_READ_ONLY: 0
MIN_TIMER_READ_ONLY: 0
AVG_TIMER_READ_ONLY: 0
MAX_TIMER_READ_ONLY: 0
每个事务汇总表都有一个或多个分组列来指示该表如何聚合事件。事件名称参考
setup_instruments表中事件工具的名称:
events_transactions_summary_by_account_by_event_name有USER、HOST和EVENT_NAME列。每行汇总了给定帐户(用户和主机组合)的事件和事件名称。events_transactions_summary_by_host_by_event_name有HOST和EVENT_NAME列。每行总结了给定主机和事件名称的事件。events_transactions_summary_by_thread_by_event_name有THREAD_ID和EVENT_NAME列。每行汇总了给定线程和事件名称的事件。events_transactions_summary_by_user_by_event_name有USER和EVENT_NAME列。每行汇总了给定用户和事件名称的事件。events_transactions_summary_global_by_event_name有一EVENT_NAME列。每行汇总了给定事件名称的事件。
每个交易汇总表都有这些包含聚合值的汇总列:
COUNT_STAR,SUM_TIMER_WAIT,MIN_TIMER_WAIT,AVG_TIMER_WAIT,MAX_TIMER_WAIT这些列类似于等待事件摘要表中的同名列(请参阅 第 25.12.15.1 节,“等待事件摘要表”),除了事务摘要表聚合事件来自
events_transactions_current而不是events_waits_current。这些列总结了读写和只读事务。COUNT_READ_WRITE,SUM_TIMER_READ_WRITE,MIN_TIMER_READ_WRITE,AVG_TIMER_READ_WRITE,MAX_TIMER_READ_WRITE这些类似于
COUNT_STAR和列,但仅汇总读写事务。事务访问模式指定事务是在读/写模式还是只读模式下运行。xxx_TIMER_WAITCOUNT_READ_ONLY,SUM_TIMER_READ_ONLY,MIN_TIMER_READ_ONLY,AVG_TIMER_READ_ONLY,MAX_TIMER_READ_ONLY这些类似于
COUNT_STAR和列,但仅汇总只读事务。事务访问模式指定事务是在读/写模式还是只读模式下运行。xxx_TIMER_WAIT
TRUNCATE TABLE允许用于交易汇总表。它具有以下效果:
对于未按帐户、主机或用户聚合的汇总表,截断会将汇总列重置为零而不是删除行。
对于按账户、主机或用户聚合的汇总表,截断会删除没有连接的账户、主机或用户的行,并将剩余行的汇总列重置为零。
此外,每个按帐户、主机、用户或线程聚合的事务汇总表都会通过截断它所依赖的连接表或截断
events_transactions_summary_global_by_event_name. 有关详细信息,请参阅
第 25.12.8 节,“性能模式连接表”。