我有一个Node.js机器人,该机器人维护了与MySQL的持久连接,但是,对于我一生来说,我不知道为什么在尝试重新连接时会超时。
在某个时候,我将不得不重新连接它以避开connect_timeout / wait_timeout刷新连接,这两个参数都设置为28800仍然可以排除那些连接。
function ConnectSQL()
{
console.log("ConnectSQL");
if (con.state == 'disconnected')
{
con.destroy();
console.log("destroyed");
}
con = MySQL.createConnection(cConfig);
con.connect(function(err)
{
//con.query("SET SESSION connect_timeout=28800; SET SESSION wait_timeout=28800;");
if (err)
{
//con.destroy();
//ConnectSQL();
console.log(err);
}
});
}
我将它与心跳间隔运行,并进行了许多不同的变化,以查看是否有任何东西可以使其重新正确连接,但没有bueno。预见到一些愚蠢的(a)sync问题。