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

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


当前回答

你应该在mysql配置文件中设置'interactive_timeout'和'wait_timeout'属性为你需要的值。

其他回答

只需执行一次MySQL升级,将重新构建innoDB引擎,并重新构建MySQL正常运行所需的许多表,如performance_schema, information_schema等。

从你的shell中发出下面的命令:

sudo mysql_upgrade -u root -p

要遵循并确保三件事:

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

答案:

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

有时候你的SQL-Server会陷入死锁,我已经遇到过这个问题100次了。你可以重启你的电脑/笔记本电脑来重启服务器(简单的方法),或者你可以去任务管理器>services> your - server - name(对我来说,它是MySQL785之类的)。然后右键单击> restart。 重试执行查询。

在“编辑->首选项->SQL编辑器->MySQL会话”中修改“读取超时”时间

使用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+(您可以尝试较大的值)

这个行动解决了我的问题。