解决cursor未关闭造成的死锁

Posted lajiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决cursor未关闭造成的死锁相关的知识,希望对你有一定的参考价值。

参考:https://blog.csdn.net/zc474235918/article/details/72731363/
https://blog.csdn.net/zmx729618/article/details/51259135


# import pymysql
# conn=pymysql.connect(host=‘127.0.0.1‘,user=‘root‘,passwd=‘123456‘,db=‘mysql‘,charset=‘utf8‘, port=3306)
# cur=conn.cursor()
# cur.execute(‘use douban;‘)
# cur.execute("insert into douban.douban(author,actor,country) VALUES(‘aa‘,‘bb‘,‘bb‘)")
# conn.commit()
# cursor.close()
cursor未关闭时会出现lock wait timeout exceeded错误解决办法:

SELECT * FROM information_schema.INNODB_TRXG;
找到对应的trx_mysql_thread_id,然后执行kill id;
即可解决

以上是关于解决cursor未关闭造成的死锁的主要内容,如果未能解决你的问题,请参考以下文章

android Cursor的自动管理方式

MySQL表不能修改删除等操作,卡死锁死情况的处理办法。

死锁的产生原因以及解决方案

如何解决多线程造成的数据库死锁

mysql 死锁:如何解决mysql死锁

解决方案电影标题中缺少代码的片段,完成挑战更多[关闭]