文档首页
MySQL 9.0 参考手册
相关文档 下载本手册
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
手册页 (TGZ) - 258.2Kb
手册页 (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 参考手册  /  ...  /  表 I/O 和锁等待汇总表

29.12.20.8 表 I/O 和锁等待汇总表

以下部分描述表 I/O 和锁等待汇总表

29.12.20.8.1 table_io_waits_summary_by_table 表

table_io_waits_summary_by_table 表聚合由 wait/io/table/sql/handler 仪器生成的表 I/O 等待事件。分组依据是表。

table_io_waits_summary_by_table 表包含以下分组列以指示表如何聚合事件:OBJECT_TYPEOBJECT_SCHEMAOBJECT_NAME。这些列与 events_waits_current 表中的列含义相同。它们标识该行适用的表。

table_io_waits_summary_by_table 包含以下包含聚合值的汇总列。如列描述中所示,一些列比较笼统,其值与更细粒度列值的总和相同。例如,聚合所有写入操作的列,其值与聚合插入、更新和删除操作的对应列值的总和相同。这样,无需用户定义的视图来对较低级别的列进行求和,即可直接获取更高级别的聚合结果。

  • COUNT_STARSUM_TIMER_WAITMIN_TIMER_WAITAVG_TIMER_WAITMAX_TIMER_WAIT

    这些列聚合所有 I/O 操作。它们与对应 xxx_READxxx_WRITE 列的总和相同。

  • COUNT_READSUM_TIMER_READMIN_TIMER_READAVG_TIMER_READMAX_TIMER_READ

    这些列聚合所有读取操作。它们与对应 xxx_FETCH 列的总和相同。

  • COUNT_WRITESUM_TIMER_WRITEMIN_TIMER_WRITEAVG_TIMER_WRITEMAX_TIMER_WRITE

    这些列聚合所有写入操作。它们与对应 xxx_INSERTxxx_UPDATExxx_DELETE 列的总和相同。

  • COUNT_FETCHSUM_TIMER_FETCHMIN_TIMER_FETCHAVG_TIMER_FETCHMAX_TIMER_FETCH

    这些列聚合所有获取操作。

  • COUNT_INSERTSUM_TIMER_INSERTMIN_TIMER_INSERTAVG_TIMER_INSERTMAX_TIMER_INSERT

    这些列聚合所有插入操作。

  • COUNT_UPDATESUM_TIMER_UPDATEMIN_TIMER_UPDATEAVG_TIMER_UPDATEMAX_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)

TRUNCATE TABLE 允许用于表 I/O 摘要表。它将摘要列重置为零,而不是删除行。截断此表也会截断 table_io_waits_summary_by_index_usage 表。

29.12.20.8.2 The table_io_waits_summary_by_index_usage Table

table_io_waits_summary_by_index_usage 表汇总所有表索引 I/O 等待事件,这些事件由 wait/io/table/sql/handler 仪器生成。分组依据是表索引。

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)

TRUNCATE TABLE 允许用于表 I/O 摘要表。它将摘要列重置为零,而不是删除行。此表也会在截断 table_io_waits_summary_by_table 表时被截断。更改表索引结构的 DDL 操作可能会导致每个索引统计信息被重置。

29.12.20.8.3 The table_lock_waits_summary_by_table Table

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_STARSUM_TIMER_WAITMIN_TIMER_WAITAVG_TIMER_WAITMAX_TIMER_WAIT

    这些列汇总所有锁操作。它们与相应的 xxx_READxxx_WRITE 列之和相同。

  • COUNT_READSUM_TIMER_READMIN_TIMER_READAVG_TIMER_READMAX_TIMER_READ

    这些列汇总所有读锁操作。它们与相应的 xxx_READ_NORMAL, xxx_READ_WITH_SHARED_LOCKS, xxx_READ_HIGH_PRIORITY, 和 xxx_READ_NO_INSERT 列之和相同。

  • COUNT_WRITESUM_TIMER_WRITEMIN_TIMER_WRITEAVG_TIMER_WRITEMAX_TIMER_WRITE

    这些列汇总所有写锁操作。它们与相应的 xxx_WRITE_ALLOW_WRITE, xxx_WRITE_CONCURRENT_INSERT, xxx_WRITE_LOW_PRIORITY, 和 xxx_WRITE_NORMAL 列之和相同。

  • COUNT_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 允许用于表锁摘要表。它将摘要列重置为零,而不是删除行。