建立到MySQL服务器的远程连接(使用MySQL命令行前端)后,我开始执行一个非常长的存储过程(我估计它可能需要超过7个小时),但在它的中间我收到错误:
错误2013(HY000):查询期间与MySQL服务器的连接丢失
所以我猜我的查询已经超时了。此过程仅将一些值存储在a中 以前空表。
收到此错误并重新建立与服务器的连接后,我可以 验证程序以某种方式继续执行。一段时间后我也验证了 以前空表现在有一些行。
我的问题是,我是否可以相信程序的执行是正确的,即使是 连接丢失了?
答案 0 :(得分:0)
首先,7个小时似乎太长了。如果无法解决的结果困扰您,您可以在N次查询完成时添加一些保存点,并将N个查询合并到一个事务中。然后,每当您的程序异常停止时,您可以加载上次保存的点。
我还建议你可以尝试将源数据选择到本地pc,并制作一些脚本来获取结果,然后将其上传到目标表。这将减少数据库服务器的开销。