以下章節描述表格 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
。它會將摘要欄位重設為零,而不是移除列。