10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 下载本手册
PDF(美国高级主任)- 41.6 mb
PDF (A4)- 41.7 mb
手册页(TGZ)- 262.3 kb
手册页(Zip)- 372.3 kb
信息(Gzip)- 4.0 mb
信息(邮政编码)- 4.0 mb
本手册节选

MySQL 8.0参考手册/.../ InnoDB INFORMATION_SCHEMA事务和锁定信息

15.15.2 InnoDB INFORMATION_SCHEMA事务和锁定信息

请注意

本节描述由性能模式公开的锁定信息data_locks而且data_lock_waits表,这些表将取代INFORMATION_SCHEMAINNODB_LOCKS而且INNODB_LOCK_WAITS表。对于类似的讨论写在较老的术语INFORMATION_SCHEMA表,请参阅InnoDB INFORMATION_SCHEMA事务和锁定信息,在MySQL 5.7参考手册

一个INFORMATION_SCHEMA表和两个Performance Schema表允许您监视InnoDB事务和诊断潜在的锁定问题:

  • INNODB_TRX:这INFORMATION_SCHEMA表提供了关于当前在内部执行的每个事务的信息InnoDB,包括事务状态(例如,它是在运行还是在等待锁)、事务启动的时间以及事务正在执行的特定SQL语句。

  • data_locks:这个Performance Schema表包含了每个持有锁和每个被阻塞的等待被持有锁释放的锁请求的一行:

    • 不管持有锁的事务的状态如何,每个持有的锁都有一行(INNODB_TRX。TRX_STATE运行锁等待回滚提交).

    • InnoDB中等待另一个事务释放锁的每个事务(INNODB_TRX。TRX_STATE锁等待)被一个阻塞锁请求阻塞。阻塞锁请求是针对另一个事务以不兼容的模式持有的行锁或表锁。锁请求总是具有与阻塞请求的持有锁的模式不兼容的模式(读还是写,共享还是独占)。

      被阻塞的事务不能继续进行,直到其他事务提交或回滚,从而释放所请求的锁。对于每一个被阻止的交易,data_locks包含一行,描述事务请求的每个锁以及事务正在等待的锁。

  • data_lock_waits:这个性能模式表表示哪些事务正在等待给定的锁,或者给定的事务正在等待哪个锁。对于每个被阻塞的事务,该表包含一行或多行,表示它请求的锁以及阻塞该请求的任何锁。的REQUESTING_ENGINE_LOCK_ID值是指事务请求的锁,而BLOCKING_ENGINE_LOCK_IDValue是指阻止第一个事务继续进行的锁(由另一个事务持有)。对于任何给定的阻塞事务,所有的行data_lock_waits有相同的值REQUESTING_ENGINE_LOCK_ID和不同的值BLOCKING_ENGINE_LOCK_ID

有关上述表的详细信息,请参见章节26.4.28,“INFORMATION_SCHEMA INNODB_TRX表”第27.12.13.1节“data_locks表”,第27.12.13.2节“data_lock_waits表”