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

相关推荐
·云扬·4 小时前
MySQL 8.0 Redo Log 归档与禁用实战指南
android·数据库·mysql
IT邦德4 小时前
Oracle 26ai DataGuard 搭建(RAC到单机)
数据库·oracle
惊讶的猫4 小时前
redis分片集群
数据库·redis·缓存·分片集群·海量数据存储·高并发写
不爱缺氧i5 小时前
完全卸载MariaDB
数据库·mariadb
纤纡.5 小时前
Linux中SQL 从基础到进阶:五大分类详解与表结构操作(ALTER/DROP)全攻略
linux·数据库·sql
jiunian_cn5 小时前
【Redis】渐进式遍历
数据库·redis·缓存
橙露5 小时前
Spring Boot 核心原理:自动配置机制与自定义 Starter 开发
java·数据库·spring boot
冰暮流星5 小时前
sql语言之分组语句group by
java·数据库·sql
符哥20085 小时前
Ubuntu 常用指令集大全(附实操实例)
数据库·ubuntu·postgresql
筵陌5 小时前
MySQL索引及其底层原理(上)
mysql