致命错误后无法排队查询

您好,我是新的nodejs和尝试连接Mysql。
我真的很担心这个错误在致命错误之后无法排队查询。
a)我没有使用连接池,以免启动复杂。
b)我在代码的开始处写了connection.connect(),但是当我在一个不需要的链接中读取的时候删除了它。 (请参考下面的链接)
调用quit后不能排队握手

以下是我所有查询的格式。

function matchFirstName(person_name){ var query = "select firstName,lastname, username,securityRole from users where firstName='"+person_name+"'" ; connection.query(query, function (err, rows) { if (err || rows.length === 0) { if(err){ console.log("error " + err); connection.end(); } } else{ // some code or call to a different function which too might call a query in the same manner } }); } 

有人请build议一个永久的解决scheme。
我试图从我的代码中删除connection.end(),但也没有帮助。 这个错误突然popup。

更新:我想我find了原因。 首先,我使用的一个查询(通常工作的查询)给出了一个ETIMEDOUT问题,然后每个查询失败。 我将connectTimeout从60000增加到120000毫秒,并添加了以下代码。

 connection.on('error', function (err){ if(err.code === 'ETIMEDOUT' ){ connection.connect(); } }); 

这会解决我的问题吗?