mysql事务锁

本文讲述了在执行TRUNCATE TABLE时遇到的长时间延迟问题,原因在于事务未提交。解决方法是通过查询INNODB_TRX表找到事务ID并强制kill掉,确保操作顺利进行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一般来说TRUNCATE TABLE是毫秒级的命令,不会受到数据量的影响,但是当你要TRUNCATE TABLE的表还有事务锁未提交的时候,就会出现TRUNCATE TABLE执行太慢(其实就是无尽的执行,永远不会结束)。

这是因为事务没有正常结束导致的事务锁,需要手动kill掉

#查询当前未提交的事务锁
SELECT * FROM information_schema.INNODB_TRX
#根据这个事务的线程ID(trx_mysql_thread_id),用kill命里杀死
kill 94362

之后你再执行TRUNCATE TABLE就立马成功了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值