events_stages_current
資料表包含目前階段事件。此資料表每個執行緒儲存一個資料列,顯示執行緒最近監控的階段事件的目前狀態,因此沒有系統變數可設定資料表大小。
在包含階段事件列的資料表中,events_stages_current
是最基本的。其他包含階段事件列的資料表在邏輯上是從目前事件衍生而來。例如,events_stages_history
和 events_stages_history_long
資料表分別是已結束的最近階段事件的集合,每個執行緒和所有執行緒最多儲存一定數量的資料列。
如需三個階段事件資料表之間關係的詳細資訊,請參閱章節 29.9,「用於目前和歷史事件的 Performance Schema 資料表」。
如需關於設定是否要收集階段事件的資訊,請參閱章節 29.12.5,「Performance Schema 階段事件資料表」。
events_stages_current
資料表具有下列欄位:
THREAD_ID
、EVENT_ID
與事件相關聯的執行緒以及事件開始時執行緒的目前事件編號。
THREAD_ID
和EVENT_ID
值一起使用時,可唯一識別資料列。沒有兩個資料列具有相同的值組。END_EVENT_ID
此欄位在事件開始時設定為
NULL
,並在事件結束時更新為執行緒的目前事件編號。EVENT_NAME
產生事件的工具名稱。這是
setup_instruments
資料表中的NAME
值。工具名稱可能有多個部分並形成階層,如章節 29.6,「Performance Schema 工具命名慣例」中所述。SOURCE
包含產生事件的檢測程式碼的原始檔案名稱,以及檔案中發生檢測的行號。這可讓您檢查原始碼,以精確判斷涉及哪些程式碼。
TIMER_START
、TIMER_END
、TIMER_WAIT
事件的計時資訊。這些值的單位是皮秒(一秒的兆分之一)。
TIMER_START
和TIMER_END
值表示事件計時的開始和結束時間。TIMER_WAIT
是事件的經過時間(持續時間)。如果事件尚未完成,則
TIMER_END
是目前的計時器值,而TIMER_WAIT
是目前為止經過的時間 (TIMER_END
−TIMER_START
)。如果事件是由具有
TIMED = NO
的工具產生,則不會收集計時資訊,且TIMER_START
、TIMER_END
和TIMER_WAIT
全部都是NULL
。如需關於皮秒作為事件時間單位以及影響時間值的因素的討論,請參閱章節 29.4.1,「Performance Schema 事件計時」。
WORK_COMPLETED
、WORK_ESTIMATED
這些欄位提供了階段進度資訊,適用於已實作產生此類資訊的工具。
WORK_COMPLETED
指示該階段已完成的工作單元數量,而WORK_ESTIMATED
指示該階段預計的工作單元數量。 更多資訊,請參閱 階段事件進度資訊。NESTING_EVENT_ID
此事件所嵌套的事件的
EVENT_ID
值。 階段事件的嵌套事件通常是語句事件。NESTING_EVENT_TYPE
嵌套事件類型。 值為
TRANSACTION
、STATEMENT
、STAGE
或WAIT
。
events_stages_current
表格具有以下索引
在 (
THREAD_ID
,EVENT_ID
) 上的主鍵
TRUNCATE TABLE
允許用於 events_stages_current
表格。 它會移除這些列。