当前位置:网站首页>1205 Lock wait timeout exceeded; try restarting transaction处理
1205 Lock wait timeout exceeded; try restarting transaction处理
2022-07-26 01:52:00 【讓丄帝愛伱】
1205 - Lock wait timeout exceeded; try restarting transaction
解决:
select * from information_schema.innodb_trx; -- 找到了那个一直没有提交的只读事务
kill thread id; -- 对应的线程后
MySQL 5.5 – innodb_lock_wait 锁 等待
以前,当出现:ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction,
要解决是一件麻烦的事情 ;
特别是当一个SQL执行完了,但未COMMIT,后面的SQL想要执行就是被锁,超时结束;
DBA光从数据库无法着手找出源头是哪个SQL锁住了;
有时候看看show engine innodb status, 并结合show full processlist;能暂时解决问题;但一直不能精确定位;
在5.5中,information_schema 库中增加了三个关于锁的表(MEMORY引擎);
innodb_trx ## 当前运行的所有事务
innodb_locks ## 当前出现的锁
innodb_lock_waits ## 锁等待的对应关系
来看一下表结构
desc information_schema .innodb_locks;
+-------------+---------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+---------------------+------+-----+---------+-------+
| 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 | Key | Default | Extra |
+-------------------+-------------+------+-----+---------+-------+
| 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 | Key | Default | Extra |
+----------------------------+---------------------+------+-----+---------------------+-------+
| 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 | | NULL | |#innodb_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 | |#
+----------------------------+---------------------+------+-----+---------------------+-------
select * from information_schema.innodb_lock_waits G
边栏推荐
- Study notes: original code, inverse code, complement code
- 【深入浅出玩转FPGA学习11----Testbench书写技巧2】
- “蔚来杯“2022牛客暑期多校训练营2 H.[Take the Elevator] 维护线段
- Worthington木瓜蛋白酶丨从纯化的蛋白聚糖生产糖肽(附文献)
- 给RestTemplate添加拦截器记录请求响应,还需解决流只读一次的问题
- Travel (split points and layers)
- Implementation of recommendation system collaborative filtering in spark
- E. Split into two sets
- Leetcode/ numbers that appear only once
- # Dest0g3 520迎新赛(更新中)
猜你喜欢

How idea can quickly delete recently opened projects

2022 love analysis ― bank digitalization practice report

AutoCAD -- Method of calculating area

The SQL script generated by powerdispatcher model runs incorrectly

言语理解-片段阅读的结构剖析练习

D. Rating compression (thinking + double pointer)

Qt程序美化之样式表的使用方法,Qt使用图片作为背景与控件透明化,Qt自定义按钮样式

6 + 1 skills of Software Test Engineer

Protect syslog servers and devices

推荐系统-协同过滤在Spark中的实现
随机推荐
Big view +500 cases, software teams should improve R & D efficiency in this way
Is it safe to open an account for stock speculation through the online account manager?
C# 迭代器的实现
Is it safe to buy funds in stock accounts? Professional answers
Add an interceptor to resttemplate to record the request response, and you also need to solve the problem that the flow is read only once
[Verilog digital system design (Xia Yuwen) 3 ----- basic concepts of Verilog syntax 1]
[in simple terms, play with FPGA learning 11 --- testbench writing skills 2]
Three modes of CPU
How to use the pagoda panel to deploy the full stack project of node to the server
Protect syslog servers and devices
Leetcode/ numbers that appear only once
【深入浅出玩转FPGA学习11----Testbench书写技巧1】
How to modify Oracle functions?
Niuke - bm39 serialized binary tree [hard]
Worthington木瓜蛋白酶丨从纯化的蛋白聚糖生产糖肽(附文献)
Is it safe for Huatai Securities to open an account online? How to handle it?
2022 love analysis ― bank digitalization practice report
Create a future and enjoy extraordinary | gbase Nantah General Motors unveiled opengauss Developer Day 2022
Implementation of recommendation system collaborative filtering in spark
ABC find 4-cycle (pigeon nest theorem)