InnoDB怎么可能在一行上死锁?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了InnoDB怎么可能在一行上死锁?相关的知识,希望对你有一定的参考价值。

根据The Good Word

InnoDB使用自动行级锁定。即使只是插入或删除单行的事务,您也可能会遇到死锁。那是因为这些操作并非真正的“原子”;它们会自动设置对插入或删除的行的(可能是几个)索引记录的锁定。

两个进程如何在单个记录上死锁?

答案

因为两个进程在事务中保持完全相同的行(例如银行帐户)并且想要对其进行更改。

因此,在同一银行账户环境中,如果需要撤回,则还不能进行另一次撤销,因为您可能遇到银行账户可能没有足够资金进行第二次撤回的情况。

这个想法是死锁,是尽可能保持锁定的最短时间。

以上是关于InnoDB怎么可能在一行上死锁?的主要内容,如果未能解决你的问题,请参考以下文章

减少InnoDB死锁发生的方法有什么?MySQL学习

哇靠,死锁了之innodb锁解读

mysql之show engine innodb status解读(转)

死锁 BLOB INSERT MySQL 8.0 InnoDB 集群

mysql innodb 行锁解锁后出现死锁

mysql innodb引擎的表怎么分表