MySQL 8.0发行说明
MySQL 8.0源代码文档10bet官方网站
请注意
本节描述锁定信息公开的表现模式data_locks
和data_lock_waits
表,它取代INFORMATION_SCHEMA
INNODB_LOCKS
和INNODB_LOCK_WAITS
在MySQL 8.0表。类似的讨论写的老INFORMATION_SCHEMA
表,请参阅InnoDB锁和锁定等待信息,在MySQL 5.7参考手册。
当一个事务更新表中的一行,或锁定它选择更新
,InnoDB
建立一个列表或队列锁的那一行。同样的,InnoDB
维护一个列表的表级锁锁在桌子上。如果第二个事务想更新一行或锁表已经被之前的事务在一个不兼容的模式中,InnoDB
增加一个锁请求的行对应的队列。锁收购交易,所有不兼容的锁请求之前进入这一行或表的锁队列必须被删除(这发生在持有或请求这些锁的事务提交或回滚)。
一个事务可以有任意数量的不同的行或表的锁请求。在任何给定的时间,一个事务可以请求一个被另一个事务的锁,在这种情况下,它被其他事务。请求事务必须等待把阻塞锁的事务提交或回滚。如果一个事务不是等待锁,它是在一个运行
状态。如果等待锁的事务,它是锁等待
状态。(INFORMATION_SCHEMA
INNODB_TRX
表显示事务状态值)。
性能模式data_locks
每个表包含一个或多个行锁等待
事务,表明任何锁请求阻止其进展。这个表还包含一行描述每个锁锁等待队列的一个给定的行或表。性能模式data_lock_waits
表显示了一个事务持有的锁已经被其他事务阻塞锁请求。