首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检测Mysql / innodb中的死锁?

问如何检测Mysql / innodb中的死锁?
EN

Stack Overflow用户
提问于 2009-03-13 15:01:41
回答 7查看 50.7K关注 0票数 14

我知道在Innodb中使用事务时不可避免地会发生死锁,如果应用程序代码正确地处理它们,死锁是无害的-“只需再试一次”,正如手册所说的那样。

所以我想知道-你是如何检测死锁的?死锁是否会发出一些特殊的mysql错误号?如果有必要的话,我正在使用PHP的mysqli扩展。

谢谢。

编辑:找到解决方案,请参阅注释

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2009-03-13 15:04:55

http://dev.mysql.com/doc/refman/5.0/en/innodb-error-codes.html

1213 (ER_LOCK_DEADLOCK)

事务死锁。您应该重新运行事务。

票数 14
EN

Stack Overflow用户

发布于 2011-01-18 06:35:02

来自MySQL命令行客户端(不是查询浏览器)的"SHOW ENGINE INNODB STATUS“将提供有关死锁的信息。

死锁也可能是由未提交的事务(通常是程序错误)引起的,运行未提交的事务的人不会看到问题,因为他们将正常工作(通过他们的数据将不会被提交)。

票数 19
EN

Stack Overflow用户

发布于 2009-03-13 15:04:17

试试MaatKit。它有一个死锁记录器。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/643122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档