我正在运行一个节点服务器,通过节点- MySQL模块连接到mysql。连接和查询MySQL最初运行良好,不会出现任何错误,但是,在节点服务器闲置几个小时后的第一个查询将导致错误。错误是熟悉的read ECONNRESET,来自于节点-mysql模块的深度。
堆栈跟踪(注意,跟踪的三个条目属于我的应用程序的错误报告代码):
Error
at exports.Error.utils.createClass.init (D:\home\site\wwwroot\errors.js:180:16)
at new newclass (D:\home\site\wwwroot\utils.js:68:14)
at Query._callback (D:\home\site\wwwroot\db.js:281:21)
at Query.Sequence.end (D:\home\site\wwwroot\node_modules\mysql\lib\protocol\sequences\Sequence.js:78:24)
at Protocol.handleNetworkError (D:\home\site\wwwroot\node_modules\mysql\lib\protocol\Protocol.js:271:14)
at PoolConnection.Connection._handleNetworkError (D:\home\site\wwwroot\node_modules\mysql\lib\Connection.js:269:18)
at Socket.EventEmitter.emit (events.js:95:17)
at net.js:441:14
at process._tickCallback (node.js:415:13)此错误既发生在我的云节点服务器和MySQL服务器上,也发生在两者的本地设置上。
我的问题:
更新:经过更多的浏览,我想我的问题是复制了这一个。他的连接似乎也断开了,但没有人建议如何保持连接活动,或者如何在第一个查询返回失败的情况下解决错误。
发布于 2022-11-09 08:55:30
我也一直面临着同样的问题。显然,之所以发生这种情况,是因为在表上触发了一个后端进程,在我的api中引用了该进程。
这导致表进入锁等待状态,而我的查询请求由于连接重置而失败。虽然我想知道为什么我没有收到锁等待错误。
https://stackoverflow.com/questions/22900931
复制相似问题