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

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


当前回答

我也遇到了同样的问题——但对我来说,解决方案是一个拥有过于严格权限的DB用户。 我必须允许mysql表上的执行能力。在允许之后,我再也没有掉接了

其他回答

新版本的MySQL WorkBench有一个选项可以更改特定的超时时间。

对我来说,它是在编辑→首选项→SQL编辑器→DBMS连接读取超时时间(秒):600

将值更改为6000。

此外,不勾选限制行,因为每次我想搜索整个数据集时都要设置一个限制,这会让人感到厌烦。

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

[mysqld]
max_allowed_packet=16M

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

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

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

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

首先检查索引是否到位。

SELECT *
FROM INFORMATION_SCHEMA.STATISTICS
WHERE TABLE_SCHEMA = '<schema>'

我也遇到过同样的问题。我相信当您有较大表的外键时(这需要时间)就会发生这种情况。

我尝试运行create table语句再次没有外键声明,并发现它工作。

然后在创建表之后,我使用ALTER table查询添加外键约束。

希望这能帮助到一些人。