MySQL:如何查找被事务锁定的行

4

例子:

START TRANSACTION;
UPDATE books SET printedCount=1000 WHERE id=5;

我该如何查找被打开事务锁定的表books的行(或这些行的ID、主键)?我想跟踪这些信息以防止我的高负载Web应用程序出现死锁,也许可以延迟一些更新查询,如果可以受到这些查询影响的行已经被锁定。

2个回答

11

3

SHOW ENGINE INNODB STATUS;

很遗憾,没有办法捕获所有死锁。相反,定期运行该命令以查看是否存在死锁;然后处理该情况。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接