Nemo

Nemo 关注TA

路漫漫其修远兮,吾将上下而求索。

Nemo

Nemo

关注TA

路漫漫其修远兮,吾将上下而求索。

  • 加入社区3,279天
  • 写了1,496,113字

该文章投稿至Nemo社区   数据库  板块 复制链接


锁表状态查询:com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction

发布于 2021/04/09 16:12 17,075浏览 0回复 447

程序忽然提示异常:

com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction

字面意思上看,大致是数据库表被锁定了,建议重启事务。


查了下公司wiki,可以有如下操作建议:

查询是否锁表

  1. show OPEN TABLES where In_use > 0;

查询进程

  1. show processlist
  2. 查询到相对应的进程===然后 kill id

查看正在锁的事务

  1. SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;

查看等待锁的事务

  1. SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;

查看事务锁

  1. SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX ORDER BY trx_started


本文标签
 {{tag}}
点了个评