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

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


当前回答

这通常意味着你有“与当前版本的MySQL服务器不兼容”,参见mysql_upgrade。我也遇到了同样的问题,我不得不跑掉:

mysql_upgrade——密码 文档声明,“mysql_upgrade应该在每次升级MySQL时执行”。

其他回答

先建立联系 Mysql——host=host.com——port=3306 -u username -p 然后选择你的db use dbname C:\dumpfile.sql 做完之后\q

要遵循并确保三件事:

多次查询是否显示失去连接? 在MySQL中如何使用set query ? 如何同时删除+更新查询?

答案:

总是尝试删除定义器,因为MySQL创建了自己的定义器,如果涉及多个表进行更新,尝试进行单个查询,因为有时多个查询显示丢失连接 总是SET值在顶部,但如果它的条件不涉及SET值,则在DELETE之后。 如果这两个操作在不同的表上执行,先使用删除,再使用更新

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

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

更多细节请阅读>>

原因2:

SET GLOBAL interactive_timeout=60;

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

原因3:

SET GLOBAL connect_timeout=60;

我在运行一个存储过程时遇到了这个问题——它正在数据库中的一个表中创建大量的行。 在超过30秒后,我就看到了这个错误。

我尝试了其他答案中的所有建议。我确信其中有一些帮助,然而,真正让我有用的是从Workbench切换到SequelPro。

我猜这是我在Workbench中没有发现的某个客户端连接。 也许这也能帮助到其他人?

尝试使用LIMIT。

跟我来

最初,查询是

SELECT * FROM TABLE1;

这是错误代码:2013。在查询MySQL服务器时失去连接

解决方案

使用限额后

SELECT * FROM TABLE1 LIMIT 10;

它工作。当再次尝试查询w/o LIMIT时,也可以工作。

注意:如果这对你有效,并且你知道为什么它有效,请评论。

你好& # 39;