mysql 锁解决的办法

可以查看锁的信息,TRX_MYSQL_THREAD_ID 为processlist的表中的会话id,用于kill

select trx_id,trx_state,trx_started,trx_requested_lock_id,trx_wait_started,trx_weight,trx_mysql_thread_id,trx_query

from innodb_trx

可以查看锁的模式,类型,锁的表

select lock_id,lock_trx_id,lock_mode,lock_type,lock_table,lock_index from innodb_locks

可以查看到请求的事务ID,请求的锁id。阻塞事务id,阻塞锁id。

select requesting_trx_id,requested_lock_id,blocking_trx_id,blocking_lock_id from INNODB_LOCK_WAITS

查看当前的会话

select * from information_schema.processlist

根据INNODB_LOCK_WAITS的requesting_trx_id与blocking_trx_id的值在innodb_trx中查找对应的行信息

select trx_id,trx_state,trx_started,trx_requested_lock_id,trx_wait_started,trx_weight,trx_mysql_thread_id,trx_query

from innodb_trx

where trx_id in (requesting_trx_id,blocking_trx_id);

再根据innodb_trx表中的TRX_MYSQL_THREAD_ID 的值

查看为processlist的表中的会话id,用于kill。根据情况,决定kill掉哪条SQL语句。

相关推荐
刘胡子大叔13 小时前
MySQL 升到 8.4 前的兼容性自检清单
mysql
IT古董13 小时前
《FDE前沿部署工程师实战教程》33 - Enterprise AI Observability:从Agent Trace到全链路智能运维
数据库·人工智能
for_ever_love__13 小时前
MySQL 主从复制讲透:binlog 原理、搭建步骤与读写分离
java·数据库·mysql·binlog·读写分离·原理·主从复制
Nturmoils18 小时前
GROUP BY 先别想当然,查汇总前把规则跑清楚
数据库
最笨的羊羊18 小时前
Oceanbase数据库系列之:向量数据库核心知识
数据库·oceanbase
fish_xk18 小时前
mysql中的表的约束
数据库·mysql
谢亮_vipxieliang18 小时前
Go Channel 高级模式——从底层原理到扇出扇入实战
java·数据库·golang
ggaofeng20 小时前
自己编写邮件服务器和客户端
数据库
java1234_小锋20 小时前
【技术专题】Mysql8 数据库 - Mysql8 添加,更新,删除数据
数据库·mysql
PaperData20 小时前
2015-2024年各省绿色贸易数据
数据库