MySQL长查询:查询期间与MYSQL服务器的连接丢失

时间:2014-06-04 14:48:21

标签: mysql

我有一个大约10000个字符的查询,但它失败并出现以下错误:

ERROR 2013 (HY000): Lost connection to MySQL server during query

仅当本地客户端(PHP或CLI)连接到远程数据库服务器时才会发生这种情况。

如果我尝试从另一个(windows)maxhine执行相同的查询,它可以在同一个数据库服务器上完美运行。所以服务器设置不是问题。

我尝试将--max_allowed_packet=16M添加到我的mysql客户端启动中,但仍然发生错误。

进一步测试显示,可执行的最大查询长度限制在5000个左右。

某些版本信息:

mysql -V
mysql  Ver 14.14 Distrib 5.5.32, for debian-linux-gnu (x86_64) using readline 6.2

知道我可以尝试什么吗?

1 个答案:

答案 0 :(得分:0)

错误'查询期间与MySQL服务器的连接丢失'通常由于网络连接中的某些问题而发生。 可能的原因和解决方案是 -

  1. 请尝试增加net_read_timeout。
  2. 检查onnect_timeout - 默认值为10秒,将其增加到更大的值。
  3. 增加max_allowed_pa​​cket。
  4. 这里提到更多细节:

    http://dev.mysql.com/doc/refman/5.1/en/error-lost-connection.html

    Error Code: 2013. Lost connection to MySQL server during query