【问题标题】:Lost connection to MySQL server during Python connection在 Python 连接期间丢失与 MySQL 服务器的连接
【发布时间】:2014-12-31 04:43:23
【问题描述】:

对于 Python 和 MySQL 来说相对较新,但我正在使用 MySQL Python 连接器在开发环境中执行一个简单的数据库查询。我创建了一个缓冲游标以将结果作为字典返回。当我执行简单查询时:

family_query = ("SELECT * FROM family as FF")

...我得到了一个错误列表,围绕着这个错误 2013: Lost Connection to MySQL server。

>python "FitMatch v1.5.py"
Traceback (most recent call last):
  File "FitMatch v1.5.py", line 505, in <module>
    fit_match_cursor.execute(fit_family_query, () )
  File "C:\Python34\lib\site-packages\mysql\connector\cursor.py", line 507, in execute
    self._handle_result(self._connection.cmd_query(stmt))
  File "C:\Python34\lib\site-packages\mysql\connector\cursor.py", line 421, in _handle_result
    self._handle_resultset()
  File "C:\Python34\lib\site-packages\mysql\connector\cursor.py", line 895, in _handle_resultset
    (self._rows, eof) = self._connection.get_rows()
  File "C:\Python34\lib\site-packages\mysql\connector\connection.py", line 671, in get_rows
    rows = self._protocol.read_text_result(self._socket, count)
  File "C:\Python34\lib\site-packages\mysql\connector\protocol.py", line 309, in read_text_result
    packet = sock.recv()
  File "C:\Python34\lib\site-packages\mysql\connector\network.py", line 226, in recv_plain
    raise errors.InterfaceError(errno=2013)
mysql.connector.errors.InterfaceError: 2013: Lost connection to MySQL server during query

我尝试将我的 connection_timeout 增加到 10,000 以上(正如我在其他可能是问题的堆栈溢出帖子中看到的那样),但没有效果。

任何想法可能导致“丢失与 MySQL 服务器的连接”错误?

【问题讨论】:

  • 格式化错误?刚刚更新了正确的格式。

标签: python mysql python-3.x


【解决方案1】:
  • 作为嵌套查询结果的打印,我遇到了这个问题
  • 仅返回结果子集后,我的 Python 查询将失败并出现问题中描述的错误。
  • 按照我的方式,你切换到 PyMySQL,一切如你所愿

    PyMySQL Link

  • 我的打印数据示例代码

     import pymysql
     connection = pymysql.connect(user='XYZ', passwd='XYZ',host='XYZ',database='XYZ')
     cursor = connection.cursor()
     query = ("YOUR_QUERY")
     cursor.execute(query)
     for item in cursor:
         print item
    
  • 如果这个答案有任何问题必须评论我....:)

【讨论】:

  • 谢谢,Virbhadrasinh。我希望不必将整个代码库切换到 PyMySQL。我宁愿坚持使用 MySQL 的预构建 Python 连接器,因为它是 3.x 及更高版本的原生连接器。
  • 事实证明你是对的,Virbhadrasinh。放弃后,我关闭了连接器,它工作正常。似乎很糟糕,包含的用于 MySQL 的 Python 连接器不起作用,但是很好。非常感谢
猜你喜欢
  • 2020-07-11
  • 2012-11-15
  • 2015-09-22
  • 1970-01-01
  • 2015-06-27
  • 1970-01-01
  • 2020-12-05
  • 1970-01-01
  • 2017-12-21
相关资源
最近更新 更多