架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 10839|回复: 0

[资料] Lock wait timeout exceeded; try restarting transaction

[复制链接]
发表于 2019-3-13 13:08:36 | 显示全部楼层 |阅读模式
Lock wait timeout exceeded; try restarting transaction是锁等待超时。是当前事务在等待其它事务释放锁资源造成的。

QQ截图20190313121511.jpg

解决方法:

在mysql查询中执行以下指令

其实我们可以用下面三张表来查原因:

innodb_trx ## 当前运行的所有事务
innodb_locks ## 当前出现的锁
innodb_lock_waits ## 锁等待的对应关系

结果如图:

QQ截图20190313121659.jpg

找出与其他几个有参数不同的线程,找出他的线程号mysql_thread_id

执行命令kill +线程号即可解决。

desc information_schema.innodb_locks;

Field
Type
Null
KeyDefaultRemark
lock_id
varchar(81)
NO
锁ID
lock_trx_id
varchar(18)
NO
拥有锁的事务ID
lock_mode
varchar(32)
NO
锁模式
lock_type
varchar(32)
NO
锁类型
lock_table
varchar(1024)
NO
被锁的表
lock_index
varchar(1024)
YES
NULL被锁的索引
lock_space
bigint(21) unsigned
YES
NULL被锁的表空间号
lock_page
bigint(21) unsigned
YES
NULL被锁的页号
lock_rec
bigint(21) unsigned
YES
NULL被锁的记录号
lock_data
varchar(8192)
YES
NULL被锁的数据


desc information_schema.innodb_lock_waits

Field
Type
Null
KeyDefaultRemark
requesting_trx_id
varchar(18)
NO
请求锁的事务ID
requested_lock_id
varchar(81)
NO
请求锁的锁ID
blocking_trx_id
varchar(18)
NO
当前拥有锁的事务ID
blocking_lock_id
varchar(81)
NO
当前拥有锁的锁ID


desc information_schema.innodb_trx ;

Field
Type
Null
KeyDefaultExtraRemark
trx_id
varchar(18)
NO
事务ID
trx_state
varchar(13)
NO
事务状态:
trx_started
datetime
NO
0000-00-00 00:00:00事务开始时间;
trx_requested_lock_id
varchar(81)
YES
NULLinnodb_locks.lock_id
trx_wait_started
datetime
YES
NULL事务开始等待的时间
trx_weight
bigint(21) unsigned
NO
0#
trx_mysql_thread_id
bigint(21) unsigned
NO
0事务线程ID
trx_query
varchar(1024)
YES
NULL具体SQL语句
trx_operation_state
varchar(64)
YES
NULL事务当前操作状态
trx_tables_in_use
bigint(21) unsigned
NO
0事务中有多少个表被使用
trx_tables_locked
bigint(21) unsigned
NO
0事务拥有多少个锁
trx_lock_structs
bigint(21) unsigned
NO
0#
trx_lock_memory_bytes
bigint(21) unsigned
NO
0事务锁住的内存大小(B)
trx_rows_locked
bigint(21) unsigned
NO
0事务锁住的行数
trx_rows_modified
bigint(21) unsigned
NO
0事务更改的行数
trx_concurrency_tickets
bigint(21) unsigned
NO
0事务并发票数
trx_isolation_level
varchar(16)
NO
事务隔离级别
trx_unique_checks
int(1)
NO
0是否唯一性检查
trx_foreign_key_checks
int(1)
NO
0是否外键检查
trx_last_foreign_key_error
varchar(256)
YES
NULL最后的外键错误
trx_adaptive_hash_latched
int(1)
NO
0#
trx_adaptive_hash_timeout
bigint(21) unsigned
NO
0#




上一篇:mysql 删除数据 delete not in 执行非常慢优化
下一篇:javaEE 2018年10月份的视频资料
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-27 10:06

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表