Performance Schema 維護表格以收集目前和最近的等待事件,並將該資訊彙總在摘要表格中。第 29.12.4 節,「Performance Schema 等待事件表格」說明了等待摘要所依據的事件。請參閱該討論,以了解等待事件的內容、目前和最近的等待事件表格,以及如何控制預設停用的等待事件收集。
等待事件摘要資訊範例
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
表格中事件儀器的名稱
events_waits_summary_by_account_by_event_name
具有EVENT_NAME
、USER
和HOST
欄。每一列摘要了指定帳戶(使用者和主機組合)和事件名稱的事件。events_waits_summary_by_host_by_event_name
具有EVENT_NAME
和HOST
欄。每一列摘要了指定主機和事件名稱的事件。events_waits_summary_by_instance
具有EVENT_NAME
和OBJECT_INSTANCE_BEGIN
欄。每一列摘要了指定事件名稱和物件的事件。如果使用儀器建立多個執行個體,則每個執行個體都有唯一的OBJECT_INSTANCE_BEGIN
值,並在此表格中單獨摘要。events_waits_summary_by_thread_by_event_name
具有THREAD_ID
和EVENT_NAME
欄。每一列摘要了指定執行緒和事件名稱的事件。events_waits_summary_by_user_by_event_name
具有EVENT_NAME
和USER
欄。每一列摘要了指定使用者和事件名稱的事件。events_waits_summary_global_by_event_name
具有EVENT_NAME
欄。每一列摘要了指定事件名稱的事件。儀器可以用於建立儀器化物件的多個執行個體。例如,如果有一個用於每個連線建立的 mutex 的儀器,則會有與連線一樣多的執行個體。儀器的摘要列會摘要所有這些執行個體。
每個等待事件摘要表格都具有這些包含彙總值的摘要欄
COUNT_STAR
摘要事件的數量。此值包括所有事件,無論是否計時。
SUM_TIMER_WAIT
摘要計時事件的總等待時間。此值僅針對計時事件計算,因為非計時事件的等待時間為
NULL
。其他的
值也是如此。xxx
_TIMER_WAITMIN_TIMER_WAIT
摘要計時事件的最小等待時間。
AVG_TIMER_WAIT
摘要計時事件的平均等待時間。
MAX_TIMER_WAIT
摘要計時事件的最大等待時間。
等待事件摘要表格具有這些索引
events_waits_summary_by_account_by_event_name
:在 (
USER
、HOST
、EVENT_NAME
) 上的主索引鍵
events_waits_summary_by_host_by_event_name
:主索引鍵為 (
HOST
,EVENT_NAME
)
events_waits_summary_by_instance
:主索引鍵為 (
OBJECT_INSTANCE_BEGIN
)索引於 (
EVENT_NAME
)
events_waits_summary_by_thread_by_event_name
:主索引鍵為 (
THREAD_ID
,EVENT_NAME
)
events_waits_summary_by_user_by_event_name
:主索引鍵為 (
USER
,EVENT_NAME
)
events_waits_summary_global_by_event_name
:主索引鍵為 (
EVENT_NAME
)
允許對等待摘要表使用 TRUNCATE TABLE
。其具有以下效果:
對於未依帳戶、主機或使用者彙總的摘要表,截斷會將摘要欄位重設為零,而不是移除資料列。
對於依帳戶、主機或使用者彙總的摘要表,截斷會移除沒有連線的帳戶、主機或使用者的資料列,並將其餘資料列的摘要欄位重設為零。
此外,每個依帳戶、主機、使用者或執行緒彙總的等待摘要表,都會因其所依賴的連線表被截斷,或因截斷 events_waits_summary_global_by_event_name
而被隱式截斷。詳細資訊請參閱 第 29.12.8 節,「效能結構描述連線表」。