在我的数据库中运行特定查询(所有表都使用InnoDB存储引擎)时,我收到以下错误:“试图锁定时发现死锁;尝试重新启动事务”在MySQL(InnoDB)中发现死锁
查询是DELETE FROM sessions WHERE userid != 0 AND lastactivity < 1289594761 AND admin = 1 AND userid NOT IN (SELECT userid FROM users WHERE (userflags & 1048576))
的错误开始时,我已经添加了非部分我的WHERE语句出现。 为什么这会导致问题,我该怎么做才能防止这种情况发生?
尽管您可能能够最小化死锁,请参阅http://stackoverflow.com/questions/2596005/working-around-mysql-error-deadlock-found-when-trying-to -get-lock-try-restartin – nos 2010-11-12 21:08:46