Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python MySQLdb句柄行锁_Python_Mysql - Fatal编程技术网

Python MySQLdb句柄行锁

Python MySQLdb句柄行锁,python,mysql,Python,Mysql,我正在使用MySQLdb,当我对表行执行更新时,有时会出现无限进程挂起 起初我想,可能是因为表是Innodb,所以它是COMMIT,但即使在每次更新之后使用autocommit(True)和db.COMMIT(),我仍然会遇到挂起的问题 是否有可能存在一个行锁,并且查询无法执行?是否有一种方法可以处理潜在的行锁,甚至可能处理较慢的查询?根据您的用户权限,您可以在更新挂起时执行SHOW PROCESSLIST或从information\u schema.PROCESSLIST中选择,以查看是否存在

我正在使用MySQLdb,当我对表行执行更新时,有时会出现无限进程挂起

起初我想,可能是因为表是Innodb,所以它是COMMIT,但即使在每次更新之后使用autocommit(True)和db.COMMIT(),我仍然会遇到挂起的问题


是否有可能存在一个行锁,并且查询无法执行?是否有一种方法可以处理潜在的行锁,甚至可能处理较慢的查询?

根据您的用户权限,您可以在更新挂起时执行
SHOW PROCESSLIST
或从
information\u schema.PROCESSLIST
中选择,以查看是否存在与其他查询的争用问题。还要对更新中使用的WHERE子句的SELECT进行解释,以查看是否需要更改语句


如果是锁争用,那么您最终应该会遇到锁等待超时(我认为默认值为50秒)。否则,如果您有时间限制,您可以使用KILL QUERY和KILL CONNECTION取消阻止游标执行。

谢谢您的输入。我终于找到了我的问题的罪魁祸首,幸运的是这不是一个锁排问题。