• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 表I / O和锁定等待摘要表

    以下各节描述了表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表

    table_io_waits_summary_by_table表汇总了wait/io/table/sql/handler仪器生成的所有表I / O等待事件。按表分组。

    table_io_waits_summary_by_table表有这些分组列示意表如何聚集事件:OBJECT_TYPEOBJECT_SCHEMA,和OBJECT_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_DELETESUM_TIMER_DELETEMIN_TIMER_DELETEAVG_TIMER_DELETEMAX_TIMER_DELETE

      这些列汇总了所有删除操作。

    table_io_waits_summary_by_table表具有以下索引:

    • 对唯一索引(OBJECT_TYPEOBJECT_SCHEMAOBJECT_NAME

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

    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_TYPEOBJECT_SCHEMAOBJECT_NAMEINDEX_NAME

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

    table_lock_waits_summary_by_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_TYPEOBJECT_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_NORMALxxx_READ_WITH_SHARED_LOCKSxxx_READ_HIGH_PRIORITY,和xxx_READ_NO_INSERT列。

    • COUNT_WRITESUM_TIMER_WRITEMIN_TIMER_WRITEAVG_TIMER_WRITEMAX_TIMER_WRITE

      这些列汇总所有写锁定操作。他们是一样的相应的总和xxx_WRITE_ALLOW_WRITExxx_WRITE_CONCURRENT_INSERTxxx_WRITE_LOW_PRIORITY,和xxx_WRITE_NORMAL列。

    • COUNT_READ_NORMALSUM_TIMER_READ_NORMALMIN_TIMER_READ_NORMALAVG_TIMER_READ_NORMALMAX_TIMER_READ_NORMAL

      这些列汇总内部读取锁。

    • COUNT_READ_WITH_SHARED_LOCKSSUM_TIMER_READ_WITH_SHARED_LOCKSMIN_TIMER_READ_WITH_SHARED_LOCKSAVG_TIMER_READ_WITH_SHARED_LOCKSMAX_TIMER_READ_WITH_SHARED_LOCKS

      这些列汇总内部读取锁。

    • COUNT_READ_HIGH_PRIORITYSUM_TIMER_READ_HIGH_PRIORITYMIN_TIMER_READ_HIGH_PRIORITYAVG_TIMER_READ_HIGH_PRIORITYMAX_TIMER_READ_HIGH_PRIORITY

      这些列汇总内部读取锁。

    • COUNT_READ_NO_INSERTSUM_TIMER_READ_NO_INSERTMIN_TIMER_READ_NO_INSERTAVG_TIMER_READ_NO_INSERTMAX_TIMER_READ_NO_INSERT

      这些列汇总内部读取锁。

    • COUNT_READ_EXTERNALSUM_TIMER_READ_EXTERNALMIN_TIMER_READ_EXTERNALAVG_TIMER_READ_EXTERNALMAX_TIMER_READ_EXTERNAL

      这些列汇总外部读取锁。

    • COUNT_WRITE_ALLOW_WRITESUM_TIMER_WRITE_ALLOW_WRITEMIN_TIMER_WRITE_ALLOW_WRITEAVG_TIMER_WRITE_ALLOW_WRITEMAX_TIMER_WRITE_ALLOW_WRITE

      这些列汇总内部写锁。

    • COUNT_WRITE_CONCURRENT_INSERTSUM_TIMER_WRITE_CONCURRENT_INSERTMIN_TIMER_WRITE_CONCURRENT_INSERTAVG_TIMER_WRITE_CONCURRENT_INSERTMAX_TIMER_WRITE_CONCURRENT_INSERT

      这些列汇总内部写锁。

    • COUNT_WRITE_LOW_PRIORITYSUM_TIMER_WRITE_LOW_PRIORITYMIN_TIMER_WRITE_LOW_PRIORITYAVG_TIMER_WRITE_LOW_PRIORITYMAX_TIMER_WRITE_LOW_PRIORITY

      这些列汇总内部写锁。

    • COUNT_WRITE_NORMALSUM_TIMER_WRITE_NORMALMIN_TIMER_WRITE_NORMALAVG_TIMER_WRITE_NORMALMAX_TIMER_WRITE_NORMAL

      这些列汇总内部写锁。

    • COUNT_WRITE_EXTERNALSUM_TIMER_WRITE_EXTERNALMIN_TIMER_WRITE_EXTERNALAVG_TIMER_WRITE_EXTERNALMAX_TIMER_WRITE_EXTERNAL

      这些列汇总外部写锁。

    table_lock_waits_summary_by_table表具有以下索引:

    • 对唯一索引(OBJECT_TYPEOBJECT_SCHEMAOBJECT_NAME

    TRUNCATE TABLE允许用于表锁定摘要表。它将摘要列重置为零,而不是删除行。