我得到了错误代码:2013。当我试图使用MySQL工作台向表添加索引时,在查询错误期间失去了与MySQL服务器的连接。 我还注意到,每当我运行长查询时,它就会出现。
是否有增加超时值的方法?
我得到了错误代码:2013。当我试图使用MySQL工作台向表添加索引时,在查询错误期间失去了与MySQL服务器的连接。 我还注意到,每当我运行长查询时,它就会出现。
是否有增加超时值的方法?
当前回答
检查有关
OOM on /var/log/messages ,
modify innodb_buffer_pool_size value ; when load data , use 50% of os mem ;
希望这能有所帮助
其他回答
使用MySql Server 8.0.28社区版,在我的模式中创建了100多个表。MySql服务器不能正常工作,多次崩溃。我发现了问题和解决方案。
我写了“select count(*) from table1..”Table100”查询并在.sql文件中运行。
问题1:MySql服务器设置utf8mb4和我的表创建utf8。
解决方案1:必须设置表和列,或者使用utf8mb4重新创建。
问题2:需要重新配置back_log参数。
解决方案2:set back_log=50+(coonectioncount/5)
问题3:wait_timeout参数需要重新配置。
解决方案3:您必须将其设置为180+(您可以尝试较大的值)
这个行动解决了我的问题。
只需执行一次MySQL升级,将重新构建innoDB引擎,并重新构建MySQL正常运行所需的许多表,如performance_schema, information_schema等。
从你的shell中发出下面的命令:
sudo mysql_upgrade -u root -p
我的观察是
当你同时运行MySQL工作台和终端时,在终端中你会做-
设置自动提交= 0;
OR
开始事务;
然后你通常会遇到这类问题。
甚至在那之后
设置自动提交= 1;
OR
提交;
问题依然存在。
您需要同时从终端和MYSQL工作台注销,然后重新登录或重新启动。
我在运行一个存储过程时遇到了这个问题——它正在数据库中的一个表中创建大量的行。 在超过30秒后,我就看到了这个错误。
我尝试了其他答案中的所有建议。我确信其中有一些帮助,然而,真正让我有用的是从Workbench切换到SequelPro。
我猜这是我在Workbench中没有发现的某个客户端连接。 也许这也能帮助到其他人?
如果你的查询有blob数据,这个问题可以通过应用my.ini更改来修复,就像在这个答案中提出的那样:
[mysqld]
max_allowed_packet=16M
默认情况下,这将是1M(允许的最大值是1024M)。如果提供的值不是1024K的倍数,它将自动舍入到1024K的最接近倍数。
虽然引用的线程是关于MySQL错误2006,设置max_allowed_packet从1M到16M确实修复了2013年的错误,当我运行一个长查询时出现。
对于WAMP用户:您将在[wampmysqld]部分中找到该标志。