我得到了错误代码:2013。当我试图使用MySQL工作台向表添加索引时,在查询错误期间失去了与MySQL服务器的连接。 我还注意到,每当我运行长查询时,它就会出现。

是否有增加超时值的方法?


当前回答

对于那些使用SSH连接到MySQL数据库的人来说,这里似乎缺少一个答案。你需要检查两个地方,而不是其他答案建议的1:

工作台编辑→首选项→SQL编辑器→DBMS

工作台编辑→首选项→SSH→超时

我的默认SSH超时设置得很低,导致了一些(但显然不是全部)超时问题。之后,不要忘记重新启动MySQL工作台!

最后,你可以联系你的数据库管理员,让他们通过my.conf + mysql restart来增加mysql自身的wait_timeout和interactive_timeout属性,如果重启mysql不是一个选项,也可以做一个全局设置。

希望这能有所帮助!

其他回答

如果你的查询有blob数据,这个问题可以通过应用my.ini更改来修复,就像在这个答案中提出的那样:

[mysqld]
max_allowed_packet=16M

默认情况下,这将是1M(允许的最大值是1024M)。如果提供的值不是1024K的倍数,它将自动舍入到1024K的最接近倍数。

虽然引用的线程是关于MySQL错误2006,设置max_allowed_packet从1M到16M确实修复了2013年的错误,当我运行一个长查询时出现。

对于WAMP用户:您将在[wampmysqld]部分中找到该标志。

原来我们的防火墙规则阻止了我连接MYSQL。在解除防火墙策略以允许连接后,我能够成功地导入架构。

此错误消息有三个可能的原因

通常这表明网络连接有问题,如果经常发生这种错误,您应该检查网络的状况 有时,当数百万行作为一个或多个查询的一部分发送时,就会出现“during query”形式。 更罕见的情况是,当客户端尝试到服务器的初始连接时,也会发生这种情况

更多细节请阅读>>

原因2:

SET GLOBAL interactive_timeout=60;

从默认的30秒到60秒或更长时间

原因3:

SET GLOBAL connect_timeout=60;

对我来说,以上都没用。然后我尝试停止mysql服务,并再次启动它,神奇地查询开始运行:D。

$ sudo service mysql stop
$ sudo service mysql start

希望这能有所帮助

至:

编辑->首选项-> SQL编辑器

在“MySQL Session”组中可以看到三个字段,现在可以在其中设置新的连接间隔(以秒为单位)。