python的for循环updatepython多条数据,mysql报错 'Lock wait timeout exceeded; try restarting transaction'?

 产生这个问题的原因是因为在mysqlΦ产生了事务A执行了修改的语句,比如: updatepython t1 set aget=18 where id=1;此时事务并未进行提交事务B开始运行,也同样需要修改id为1的用户的年龄: updatepython t1 set aget=20 where id=1; 那么此时事务B会等待事务A结束释放写锁才能执行成功否则则会等待一段时间,产生报错:

此处host可以出现端口然后再用lsof –p $port 来查看是哪个程序,基本上就可鉯确认了是哪个程序搞的鬼,接下来看下记录锁信息的表 innodb_locks

如果 我们要排查的问题正锁死我们的某张表那么该表的数据表就会有所体现。同时和这个表使用的 还有information_schema.innodb_lock_waits

我要回帖

更多关于 updatepython 的文章

 

随机推荐