gpt4 book ai didi

python - Twisted、MySQLdb 和 (2006, 'MySQL server has gone away') 使用 Twisted adbapi

转载 作者:行者123 更新时间:2023-11-29 02:34:20 24 4
gpt4 key购买 nike

在 twisted 中,我是一个永久的事件循环,它总是在寻找要运行的新查询它轮询一个 SQS 队列,并且是查询之间的时间足够长以致超时的时间,这是我在新的查询时得到的错误查询到达...

MySQLdb _mysql_exceptions.OperationalError: (2006, 'MySQL server has gone away')

这是我的连接

self.pool = adbapi.ConnectionPool("MySQLdb", self.parms['host'], self.parms['username'], self.parms['password'], self.parms['database'])

这是我用来尝试解决问题的逻辑。

try:
d = self.pool.runQuery(query, ())
except:
self.pool = adbapi.ConnectionPool("MySQLdb", self.parms['host'], self.parms['username'], self.parms['password'], self.parms['database'])
d = self.pool.runQuery(query, ())
print 'Reconnecting'

问题是它似乎不能很好地工作。所以..如果出现 206 错误,请尝试重新连接并再次执行查询。解决此问题的最佳做法是什么?

谢谢

最佳答案

我没有使用过 adbapi,但是 cp_reconnect 参数,在 docs 中提到过,看起来很有前途。

因此你的池初始化看起来像这样:

self.pool = adbapi.ConnectionPool("MySQLdb", self.parms['host'], self.parms['username'], self.parms['password'], self.parms['database'], cp_reconnect=True)

关于python - Twisted、MySQLdb 和 (2006, 'MySQL server has gone away') 使用 Twisted adbapi,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7656499/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com