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语句。

相关推荐
瀚高PG实验室8 分钟前
通过数据库日志获取数据库中的慢SQL
数据库·sql·瀚高数据库
Hgfdsaqwr17 分钟前
Python在2024年的主要趋势与发展方向
jvm·数据库·python
invicinble25 分钟前
对于Mysql深入理解
数据库·mysql
阳光九叶草LXGZXJ1 小时前
达梦数据库-学习-47-DmDrs控制台命令(LSN、启停、装载)
linux·运维·数据库·sql·学习
Hgfdsaqwr1 小时前
掌握Python魔法方法(Magic Methods)
jvm·数据库·python
s1hiyu1 小时前
使用Scrapy框架构建分布式爬虫
jvm·数据库·python
2301_763472461 小时前
使用Seaborn绘制统计图形:更美更简单
jvm·数据库·python
熊文豪2 小时前
金仓数据库如何以“多模融合“重塑文档数据库新范式
数据库·金仓数据库·电科金仓·mongodb迁移
霖霖总总2 小时前
[小技巧56]深入理解 MySQL 聚簇索引与非聚簇索引:原理、差异与实践
数据库·mysql
Dreamboat-L2 小时前
Redis及其两种持久化技术详解
数据库·redis·缓存