以下章節描述表格 I/O 和鎖定等待摘要表格
table_io_waits_summary_by_index_usage:每個索引的表格 I/O 等待table_io_waits_summary_by_table:每個表格的表格 I/O 等待table_lock_waits_summary_by_table:每個表格的表格鎖定等待
table_io_waits_summary_by_table 表格會彙總由 wait/io/table/sql/handler 儀器產生的所有表格 I/O 等待事件。分組依據是表格。
table_io_waits_summary_by_table 表格具有這些分組欄,以指示表格如何彙總事件:OBJECT_TYPE、OBJECT_SCHEMA 和 OBJECT_NAME。這些欄的意義與 events_waits_current 表格中的意義相同。它們識別該列套用的表格。
table_io_waits_summary_by_table 具有以下包含彙總值的摘要欄。如欄描述中所述,某些欄更通用,其值與更細微欄的值總和相同。例如,彙總所有寫入的欄會保存彙總插入、更新和刪除的對應欄的總和。如此一來,即可直接取得較高層級的彙總,而無需使用者定義的視圖來加總較低層級的欄。
COUNT_STAR、SUM_TIMER_WAIT、MIN_TIMER_WAIT、AVG_TIMER_WAIT、MAX_TIMER_WAIT這些欄會彙總所有 I/O 操作。它們與對應
和xxx_READ欄的總和相同。xxx_WRITECOUNT_READ、SUM_TIMER_READ、MIN_TIMER_READ、AVG_TIMER_READ、MAX_TIMER_READ這些欄會彙總所有讀取操作。它們與對應
欄的總和相同。xxx_FETCHCOUNT_WRITE、SUM_TIMER_WRITE、MIN_TIMER_WRITE、AVG_TIMER_WRITE、MAX_TIMER_WRITE這些欄會彙總所有寫入操作。它們與對應
、xxx_INSERT和xxx_UPDATE欄的總和相同。xxx_DELETECOUNT_FETCH、SUM_TIMER_FETCH、MIN_TIMER_FETCH、AVG_TIMER_FETCH、MAX_TIMER_FETCH這些欄會彙總所有擷取操作。
COUNT_INSERT、SUM_TIMER_INSERT、MIN_TIMER_INSERT、AVG_TIMER_INSERT、MAX_TIMER_INSERT這些欄位彙總所有插入操作。
COUNT_UPDATE、SUM_TIMER_UPDATE、MIN_TIMER_UPDATE、AVG_TIMER_UPDATE、MAX_TIMER_UPDATE這些欄位彙總所有更新操作。
COUNT_DELETE、SUM_TIMER_DELETE、MIN_TIMER_DELETE、AVG_TIMER_DELETE、MAX_TIMER_DELETE這些欄位彙總所有刪除操作。
table_io_waits_summary_by_table 表格具有以下索引
在 (
OBJECT_TYPE,OBJECT_SCHEMA,OBJECT_NAME) 上的唯一索引
表格 I/O 摘要表格允許使用 TRUNCATE TABLE。 它會將摘要欄位重設為零,而不是移除列。截斷此表格也會截斷 table_io_waits_summary_by_index_usage 表格。
table_io_waits_summary_by_index_usage 表格彙總所有由 wait/io/table/sql/handler 工具產生的表格索引 I/O 等待事件。分組依據為表格索引。
table_io_waits_summary_by_index_usage 的欄位與 table_io_waits_summary_by_table 的欄位幾乎相同。唯一的差異是額外的分組欄位 INDEX_NAME,此欄位對應於記錄表格 I/O 等待事件時所使用的索引名稱
PRIMARY值表示表格 I/O 使用了主要索引。NULL值表示表格 I/O 沒有使用任何索引。插入操作計入
INDEX_NAME = NULL。
table_io_waits_summary_by_index_usage 表格具有以下索引
在 (
OBJECT_TYPE、OBJECT_SCHEMA、OBJECT_NAME、INDEX_NAME) 上的唯一索引
表格 I/O 摘要表格允許使用 TRUNCATE TABLE。它會將摘要欄位重設為零,而不是移除列。截斷 table_io_waits_summary_by_table 表格也會截斷此表格。更改表格索引結構的 DDL 操作可能會導致每個索引的統計資料重設。
table_lock_waits_summary_by_table 表格彙總所有由 wait/lock/table/sql/handler 工具產生的表格鎖定等待事件。分組依據為表格。
此表格包含內部和外部鎖定的資訊
內部鎖定對應於 SQL 層中的鎖定。目前是透過呼叫
thr_lock()實作。在事件列中,這些鎖定會透過OPERATION欄位區分,其具有以下其中一個值read normal read with shared locks read high priority read no insert write allow write write concurrent insert write delayed write low priority write normal外部鎖定對應於儲存引擎層中的鎖定。目前是透過呼叫
handler::external_lock()實作。在事件列中,這些鎖定會透過OPERATION欄位區分,其具有以下其中一個值read external write external
table_lock_waits_summary_by_table 表格具有以下分組欄位,以指示表格如何彙總事件:OBJECT_TYPE、OBJECT_SCHEMA 和 OBJECT_NAME。這些欄位的含義與 events_waits_current 表格中的含義相同。它們識別該列所適用的表格。
table_lock_waits_summary_by_table 具有以下包含彙總值的摘要欄位。如欄位說明所示,某些欄位較為一般,其值與更精細欄位的值之總和相同。例如,彙總所有鎖定的欄位會保留彙總讀取和寫入鎖定的對應欄位之總和。如此一來,較高層級的彙總可直接使用,而無需使用加總較低層級欄位的使用者定義檢視。
COUNT_STAR、SUM_TIMER_WAIT、MIN_TIMER_WAIT、AVG_TIMER_WAIT、MAX_TIMER_WAIT這些欄位彙總所有鎖定操作。它們與對應的
和xxx_READ欄位的總和相同。xxx_WRITECOUNT_READ、SUM_TIMER_READ、MIN_TIMER_READ、AVG_TIMER_READ、MAX_TIMER_READ這些欄位彙總所有讀取鎖定操作。它們與對應的
、xxx_READ_NORMAL、xxx_READ_WITH_SHARED_LOCKS和xxx_READ_HIGH_PRIORITY欄位的總和相同。xxx_READ_NO_INSERTCOUNT_WRITE、SUM_TIMER_WRITE、MIN_TIMER_WRITE、AVG_TIMER_WRITE、MAX_TIMER_WRITE這些欄位彙總所有寫入鎖定操作。它們與對應的
、xxx_WRITE_ALLOW_WRITE、xxx_WRITE_CONCURRENT_INSERT和xxx_WRITE_LOW_PRIORITY欄位的總和相同。xxx_WRITE_NORMALCOUNT_READ_NORMAL、SUM_TIMER_READ_NORMAL、MIN_TIMER_READ_NORMAL、AVG_TIMER_READ_NORMAL、MAX_TIMER_READ_NORMAL這些欄位彙總內部讀取鎖定。
COUNT_READ_WITH_SHARED_LOCKS、SUM_TIMER_READ_WITH_SHARED_LOCKS、MIN_TIMER_READ_WITH_SHARED_LOCKS、AVG_TIMER_READ_WITH_SHARED_LOCKS、MAX_TIMER_READ_WITH_SHARED_LOCKS這些欄位彙總內部讀取鎖定。
COUNT_READ_HIGH_PRIORITY、SUM_TIMER_READ_HIGH_PRIORITY、MIN_TIMER_READ_HIGH_PRIORITY、AVG_TIMER_READ_HIGH_PRIORITY、MAX_TIMER_READ_HIGH_PRIORITY這些欄位彙總內部讀取鎖定。
COUNT_READ_NO_INSERT、SUM_TIMER_READ_NO_INSERT、MIN_TIMER_READ_NO_INSERT、AVG_TIMER_READ_NO_INSERT、MAX_TIMER_READ_NO_INSERT這些欄位彙總內部讀取鎖定。
COUNT_READ_EXTERNAL、SUM_TIMER_READ_EXTERNAL、MIN_TIMER_READ_EXTERNAL、AVG_TIMER_READ_EXTERNAL、MAX_TIMER_READ_EXTERNAL這些欄位彙總外部讀取鎖定。
COUNT_WRITE_ALLOW_WRITE、SUM_TIMER_WRITE_ALLOW_WRITE、MIN_TIMER_WRITE_ALLOW_WRITE、AVG_TIMER_WRITE_ALLOW_WRITE、MAX_TIMER_WRITE_ALLOW_WRITE這些欄位彙總內部寫入鎖定。
COUNT_WRITE_CONCURRENT_INSERT、SUM_TIMER_WRITE_CONCURRENT_INSERT、MIN_TIMER_WRITE_CONCURRENT_INSERT、AVG_TIMER_WRITE_CONCURRENT_INSERT、MAX_TIMER_WRITE_CONCURRENT_INSERT這些欄位彙總內部寫入鎖定。
COUNT_WRITE_LOW_PRIORITY、SUM_TIMER_WRITE_LOW_PRIORITY、MIN_TIMER_WRITE_LOW_PRIORITY、AVG_TIMER_WRITE_LOW_PRIORITY、MAX_TIMER_WRITE_LOW_PRIORITY這些欄位彙總內部寫入鎖定。
COUNT_WRITE_NORMAL、SUM_TIMER_WRITE_NORMAL、MIN_TIMER_WRITE_NORMAL、AVG_TIMER_WRITE_NORMAL、MAX_TIMER_WRITE_NORMAL這些欄位彙總內部寫入鎖定。
COUNT_WRITE_EXTERNAL、SUM_TIMER_WRITE_EXTERNAL、MIN_TIMER_WRITE_EXTERNAL、AVG_TIMER_WRITE_EXTERNAL、MAX_TIMER_WRITE_EXTERNAL這些欄位彙總外部寫入鎖定。
table_lock_waits_summary_by_table 表格具有以下索引
在 (
OBJECT_TYPE,OBJECT_SCHEMA,OBJECT_NAME) 上的唯一索引
表格鎖定摘要表格允許使用 TRUNCATE TABLE。它會將摘要欄位重設為零,而不是移除列。