阶段摘要表
性能架构维护用于收集当前和最近阶段事件的表,并将该信息汇总到摘要表中。“性能架构阶段事件表”描述了阶段摘要所基于的事件。请参阅该讨论,以获取有关舞台事件的内容,当前和历史舞台事件表以及如何控制舞台事件收集(默认情况下已禁用)的信息。
示例阶段事件摘要信息:
mysql>SELECT *FROM performance_schema.events_stages_summary_global_by_event_name\G ... *************************** 5. row*************************** EVENT_NAME: stage/sql/checking permissions COUNT_STAR: 57 SUM_TIMER_WAIT: 26501888880 MIN_TIMER_WAIT: 7317456 AVG_TIMER_WAIT: 464945295 MAX_TIMER_WAIT: 12858936792 ... *************************** 9. row*************************** EVENT_NAME: stage/sql/closing tables COUNT_STAR: 37 SUM_TIMER_WAIT: 662606568 MIN_TIMER_WAIT: 1593864 AVG_TIMER_WAIT: 17907891 MAX_TIMER_WAIT: 437977248 ...
每个阶段摘要表都有一个或多个分组列,以指示该表如何聚合事件。事件名称是指setup_instruments
表中事件工具的名称:
events_stages_summary_by_account_by_event_name
有EVENT_NAME
,USER
和HOST
列。每行总结了给定帐户(用户和主机组合)的事件和事件名称。events_stages_summary_by_host_by_event_name
有EVENT_NAME
和HOST
列。每行总结了给定主机和事件名称的事件。events_stages_summary_by_thread_by_event_name
有THREAD_ID
和EVENT_NAME
列。每行总结了给定线程和事件名称的事件。events_stages_summary_by_user_by_event_name
有EVENT_NAME
和USER
列。每行总结了给定用户和事件名称的事件。events_stages_summary_global_by_event_name
有EVENT_NAME
专栏。每行总结了给定事件名称的事件。
每个阶段汇总表具有包含聚合值这些摘要列:COUNT_STAR
,SUM_TIMER_WAIT
,MIN_TIMER_WAIT
,AVG_TIMER_WAIT
,和MAX_TIMER_WAIT
。这些列类似于等待事件摘要表中的相同名称的列(请参见“等待事件摘要表”),不同之处在于阶段摘要表汇总了events_stages_current
而不是的事件events_waits_current
。
阶段摘要表具有以下索引:
events_stages_summary_by_account_by_event_name
:- 在主键(
USER
,HOST
,EVENT_NAME
)
- 在主键(
events_stages_summary_by_host_by_event_name
:- (
HOST
,EVENT_NAME
)上的主键
- (
events_stages_summary_by_thread_by_event_name
:- (
THREAD_ID
,EVENT_NAME
)上的主键
- (
events_stages_summary_by_user_by_event_name
:- (
USER
,EVENT_NAME
)上的主键
- (
events_stages_summary_global_by_event_name
:- (
EVENT_NAME
)上的主键
- (
TRUNCATE TABLE
允许用于阶段摘要表。它具有以下效果:
- 对于未按帐户,主机或用户聚合的摘要表,截断会将摘要列重置为零,而不是删除行。
- 对于按帐户,主机或用户聚合的摘要表,截断将删除无连接的帐户,主机或用户的行,并将其余行的摘要列重置为零。
另外,由帐户,主机,用户或线程聚合的每个阶段摘要表都将通过其所依赖的连接表的截断或的截断而隐式地截断events_stages_summary_global_by_event_name
。有关详细信息,请参见“性能架构连接表”。