为了账号安全,请及时绑定邮箱和手机立即绑定

python多线程爬虫往mysql里面写数据导致死锁

python多线程爬虫往mysql里面写数据导致死锁

翻翻过去那场雪 2018-10-03 22:27:57
我在爬虫里面用的是MySQLdb这个包进行insert操作,我一开始是所有子线程公用一个mysql连接,结果发现数据写不进去,然后我又试过所有子线程公用一个cursor游标,出现了只有部分数据写进去了,而且自增id居然还自增了。(也就是数据没有写入进去,但是自增id的自增数增加了),最后我干脆每个子线程在每一次写入的时候创建一个连接句柄,然后就出现了如图症状,请问这该怎么办啊?有什么优化方法吗?
查看完整描述

2 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

首先,多线程共用一个连接,相当于并发,很多线程需要等待。
每个线程一个连接利用率不高,所以一般都是连接池。不用了回收,并且连接一直保持,避免了频繁连接断开。

配图,题主是否开启事务


查看完整回答
反对 回复 2018-10-14
  • 2 回答
  • 0 关注
  • 1849 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信