Lock wait timeout exceeded; try restarting transaction解决方案


Lock wait timeout exceeded; try restarting transaction解决方案

1
[2021-11-01 09:49:59] [40001][1205] Lock wait timeout exceeded; try restarting transaction

innodb_trx

当前运行的所有事务

Field Type Remark
trx_id varchar 事务ID
trx_state varchar 事务状态
trx_started datetime 事务开始时间
trx_requested_lock_id varchar innodb_locks.lock_id
trx_wait_started datetime 事务开始等待的时间
trx_weight bigint 事务的权重
trx_mysql_thread_id bigint 事务线程 ID,可以和 PROCESSLIST 表 JOIN
trx_query varchar 事务正在执行的 SQL 语句
trx_operation_state varchar 事务当前操作状态
trx_tables_in_use bigint 当前事务执行的 SQL 中使用的表的个数
trx_tables_locked bigint 当前执行 SQL 的行锁数量
trx_lock_structs bigint 事务保留的锁数量
trx_lock_memory_bytes bigint 事务锁住的内存大小,单位为 BYTES
trx_rows_locked bigint 事务锁住的记录数。包含标记为 DELETED,并且已经保存到磁盘但对事务不可见的行
trx_rows_modified bigint 事务更改的行数
trx_concurrency_tickets bigint 事务并发票数
trx_isolation_level varchar 当前事务的隔离级别
trx_unique_checks int 否打开唯一性检查的标识
trx_foreign_key_checks int 是否打开外键检查的标识
trx_last_foreign_key_error varchar 最后一次的外键错误信息
trx_adaptive_hash_latched int 自适应散列索引是否被当前事务锁住的标识
trx_adaptive_hash_timeout bigint 是否立刻放弃为自适应散列索引搜索 LATCH 的标识
trx_is_read_only int
trx_autocommit_non_locking int

innodb_locks

当前出现的锁

Field Type Remark
lock_id varchar 锁ID
lock_trx_id varchar 拥有锁的事务ID
lock_mode varchar 锁模式
lock_type varchar 锁类型
lock_table varchar 被锁的表
lock_index varchar 被索引的索引
lock_space bigint 被锁的表空间号
lock_page bigint 被锁的页号
lock_rec bigint 被锁的记录号
lock_data varchar 被锁的数据

innodb_lock_waits

锁等待的对应关系

Field Type Remark
requesting_trx_id varchar 请求锁的事务ID
requested_lock_id varchar 请求锁的锁ID
blocking_trx_id varchar 当前拥有锁的事务ID
blocking_lock_id varchar 当前拥有锁的锁ID

文章作者: Callable
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Callable !
评论
  目录