错误2013(HY000):在查询期间失去与MySQL的连接

时间:2020-07-02 13:49:35

标签: mysql mysql-error-2013

我有一个远程MySQL数据库,而我的已部署应用程序(一些Java微服务应用程序)在进行某些SQL查询时始终遇到错误ERROR 2013 (HY000): Lost connection to MySQL during query。然后,我尝试使用MySQL命令行客户端连接到mysql,执行相同的查询,并设法复制相同的错误。以下是跟随此页面https://dev.mysql.com/doc/refman/5.7/en/error-lost-connection.html

之后的Mysql设置
+------------------------------+----------+
| Variable_name                | Value    |
+------------------------------+----------+
| connect_timeout              | 3600     |
| delayed_insert_timeout       | 300      |
| have_statement_timeout       | YES      |
| innodb_flush_log_at_timeout  | 1        |
| innodb_lock_wait_timeout     | 5        |
| innodb_rollback_on_timeout   | OFF      |
| interactive_timeout          | 7200     |
| lock_wait_timeout            | 50       |
| net_read_timeout             | 3000     |
| net_write_timeout            | 6000     |
| rpl_semi_sync_master_timeout | 10000    |
| rpl_stop_slave_timeout       | 31536000 |
| slave_net_timeout            | 4        |
| wait_timeout                 | 7200     |
+------------------------------+----------+

+--------------------------+------------+
| Variable_name            | Value      |
+--------------------------+------------+
| max_allowed_packet       | 1073741824 |
| slave_max_allowed_packet | 1073741824 |
+--------------------------+------------+

但是,从mysql命令行客户端执行大型SQL查询后,大约10分钟后,我系统地出现了相同的错误。

注意:在数据库服务器端,我注意到了日志[注意]与db的连接xxxxx已中止:'xxxxx'用户'xxxxx'主机'xxxxx'(在写入通信数据包时出错)

DBA在安装了mysql的服务器上成功执行了查询。但是我们必须将mysql作为服务远程使用。

如果有人能帮助我,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

最后,根本原因是网络问题。我们的远程MySQL实例作为服务公开。客户端和MySQL数据库之间还有一个额外的代理。默认情况下,如果客户端和服务器之间的通信超过10分钟,则连接将关闭。

相关问题