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


MySQL 9.0 参考手册  /  MySQL 性能模式  /  性能模式原子和分子事件

29.8 性能模式原子和分子事件

对于表 I/O 事件,events_waits_current 中通常有两行,而不是一行。例如,行获取可能会导致如下行

Row# EVENT_NAME                 TIMER_START TIMER_END
---- ----------                 ----------- ---------
   1 wait/io/file/myisam/dfile        10001 10002
   2 wait/io/table/sql/handler        10000 NULL

行获取导致文件读取。在本例中,表 I/O 获取事件在文件 I/O 事件之前开始,但尚未完成(其 TIMER_END 值为 NULL)。文件 I/O 事件“嵌套”在表 I/O 事件中。

发生这种情况是因为,与互斥锁或文件 I/O 等其他“原子”等待事件不同,表 I/O 事件是“分子”的,并且包含(与之重叠)其他事件。在 events_waits_current 中,表 I/O 事件通常有两行

  • 一行用于最近的表 I/O 等待事件

  • 一行用于任何类型的最近等待事件

通常情况下,“任何类型”的等待事件与表 I/O 事件不同,但并非总是如此。随着每个子事件的完成,它会从 events_waits_current 中消失。此时,以及直到下一个子事件开始之前,表 I/O 等待也是任何类型的最近等待。