MySQL 5.7 Performance Schema 介紹

feelpurple發表於2016-05-12
Performance Schema是MySQL提供的在系統底層監視MySQL伺服器效能的一個特性,PERFORMANCE_SCHEMA儲存引擎會監視MySQL服務的事件。

這個使用者下有一系列的效能表:

Setup 表

這些表用來配置和顯示監控的特性

setup_actors 包含是否開啟監視的資訊和新的前臺服務現場的歷史事件記錄的資訊。預設,這張表有100行,可以透過改變performance_schema_setup_actors_size系統引數來改變這個值(需要重啟資料庫服務)。

setup_consumers 顯示儲存和啟用的事件資訊的消費型別

setup_instruments 顯示收集事件的表

setup_objects 控制Performance Schema是否監視特定的資料物件。預設,這張表能包含100行,可以透過改變performance_schema_setup_objects_size系統引數來改變這個值(需要重啟資料庫服務)。

setup_timers 顯示當前選擇的事件計時器

當前事件表

events_waits_current 包含當前的等待事件,一個執行緒顯示一行,顯示執行緒最近的等待事件和狀態

events_stages_current 包含現階段事件,每個執行緒顯示一行資訊, 顯示執行緒最近的等待事件和狀態。這張表可以被執行TRUNCATE TABLE命令。在所有階段事件表中,events_stages_current是最基礎的表

events_stages_history、events_stages_history_long表都是從這張表生成的邏輯表。

events_statements_current    包含語句事件

events_transactions_current    包含事務事件


歷史表

events_waits_history     包含每個執行緒的最近N個事件。N的值可以透過改變performance_schema_events_waits_history_size引數來設定(需要重啟資料庫服務)。只有事件結束了,相關的等待事件才會新增到這張表中,當表達到設定的行數時,在增加新的事件前,舊的事件會被刪除。

events_waits_history_long     包含最近的N個事件,N的值可以透過改變performance_schema_events_waits_history_long_size引數來設定(需要重啟資料庫服務)。只有事件結束了,相關的等待事件才會新增到這張表中,當表達到設定的行數時,在增加新的事件前,舊的事件會被刪除。當執行緒結束時,它的相關資訊會從這張表中移除。這張表可以透過TRUNCATE TABLE命令來執行TRUNCATE操作。

events_stages_history 包含每個執行緒最近的N個階段事件。N的值可以透過改變performance_schema_events_stages_history_size引數來設定(需要重啟資料庫服務)。當表達到設定的行數時,在增加新的事件前,舊的事件會被刪除。這張表可以被執行TRUNCATE TABLE操作。

select thread_id,event_id,event_name,timer_wait from events_states_history
where thread_id in (select thread_id from threads where processlist_id=81)
order by event_id;

events_stages_history_long      包含最近的N個階段事件。N的值可以透過改變performance_schema_events_stages_history_long_size引數來設定(需要重啟資料庫服務)。當表達到設定的行數時,在增加新的事件前,舊的事件會被刪除。這張表可以被執行TRUNCATE TABLE操作。當執行緒結束時,它的相關資訊會從這張表中移除。

概要表

這些表包含總結性的事件資訊

例項表

這些表生成事件名稱和狀態資訊

其他表

其他沒在上面分類中的表

threads      包含每個伺服器執行緒的資訊,每行包含一個執行緒的狀態和指示這個執行緒是否被監視以及是否啟用歷史事件記錄

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26506993/viewspace-2098384/,如需轉載,請註明出處,否則將追究法律責任。

相關文章