我得到了错误代码:2013。当我试图使用MySQL工作台向表添加索引时,在查询错误期间失去了与MySQL服务器的连接。 我还注意到,每当我运行长查询时,它就会出现。
是否有增加超时值的方法?
我得到了错误代码:2013。当我试图使用MySQL工作台向表添加索引时,在查询错误期间失去了与MySQL服务器的连接。 我还注意到,每当我运行长查询时,它就会出现。
是否有增加超时值的方法?
当前回答
根据我所理解的,这个错误是由于读取超时引起的,最大允许的包默认值是4M。如果你的查询文件超过4Mb,那么你会得到一个错误。这对我很有效
修改读超时时间。要进行更改,请单击工作台编辑器→首选项→SQL编辑器
2. 通过编辑my.ini文件手动更改max_allowed_packet。请到“C:\ProgramData\MySQL\MySQL Server 8.0\my.ini”目录进行编辑。ProgramData文件夹是隐藏的,所以如果你没有看到,那么选择在视图设置中显示隐藏文件。在my.ini文件中设置max_allowed_packet = 16M。 3.重新启动MySQL。如果需要重新启动,请执行win+ R ->服务。重新启动MySQL。
其他回答
只需执行一次MySQL升级,将重新构建innoDB引擎,并重新构建MySQL正常运行所需的许多表,如performance_schema, information_schema等。
从你的shell中发出下面的命令:
sudo mysql_upgrade -u root -p
进入工作台编辑→首选项→SQL编辑器→DBMS连接读取超时时间:高达3000。 错误不再发生。
在/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
SET @@local.net_read_timeout=360;
警告:当您在远程连接中应用它时,以下将不起作用:
SET @@global.net_read_timeout=360;
编辑:360是秒数
此错误消息有三个可能的原因
通常这表明网络连接有问题,如果经常发生这种错误,您应该检查网络的状况 有时,当数百万行作为一个或多个查询的一部分发送时,就会出现“during query”形式。 更罕见的情况是,当客户端尝试到服务器的初始连接时,也会发生这种情况
更多细节请阅读>>
原因2:
SET GLOBAL interactive_timeout=60;
从默认的30秒到60秒或更长时间
原因3:
SET GLOBAL connect_timeout=60;