一条简单的update语句耗时6秒钟,看了下执行时间卡在上锁耗时,请问这个是什么原因?
看看执行计划呢
锁表了,由于锁冲突或错误,计划可能会执行失败并重试执行多次,该时间是不包含最后一次执行的前序执行自然时间(注:执行计划中的时间不含该前序时间)
1 个赞
CLUSTER_TIDB_TRX表里看看锁
这个表只记录当前瞬间的状态,过了就没了
你这sql不是一直有执行?还是某些时候才执行?
这个需要满足条件才会触发的,不是一直有。
下次执行的时候看下,应该是有锁
看下日志里面有木有记录锁相关的信息
锁冲突看看是不是有事务并发
看看系统表的锁信息
调整一下隔离级别,看看是不是rc隔离级别,看看where条件也没有索引
这个上锁的问题,很难排查,主要还是要从业务上排查。
此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。