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

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


当前回答

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

[mysqld]
max_allowed_packet=16M

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

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

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

其他回答

我在加载.csv文件时遇到了同样的问题。 将文件转换为.sql。

使用下面的命令,我设法解决这个问题。

mysql -u <user> -p -D <DB name> < file.sql

希望这能有所帮助。

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

在/etc/mysql/cnf文件中增加如下内容:

innodb_buffer_pool_size = 64M

例子:

key_buffer              = 16M
max_allowed_packet      = 16M
thread_stack            = 192K
thread_cache_size       = 8
innodb_buffer_pool_size = 64M

进入工作台编辑→首选项→SQL编辑器→DBMS连接读取超时时间:高达3000。 错误不再发生。

尝试使用LIMIT。

跟我来

最初,查询是

SELECT * FROM TABLE1;

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

解决方案

使用限额后

SELECT * FROM TABLE1 LIMIT 10;

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

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

你好& # 39;