2014-11-06 39 views
0

我正在使用nodejs和node-mysql連接到一個mysql數據庫。我使用pool.query來調用數據庫中的存儲過程。這個特殊的需要很長時間才能運行。我收到此錯誤在10分鐘查詢後Node-mysql pool.query被斷開連接

錯誤:連接丟失:服務器關閉連接。

等待查詢完成10分鐘後。服務器掛在我身上(因爲連接閒置時間過長?),但我找不到任何會在10分鐘後導致斷開的mysql變量。我確定我剛剛得到了錯誤配置的內容,但無法追查到可能的情況。

+0

這是不是一個Node.js的配置,它是一個MySQL配置http://dev.mysql.com /doc/refman/5.0/en/server-system-variables.html#sysvar_wait_timeout檢查SO http://stackoverflow.com/questions/26533936/node-js-mysql-connection-via-a-singleton – fmodos 2014-11-06 18:03:35

+0

wait_timeout我的MySQL服務器是默認的28800(這是8小時)是否有另一個變量,覆蓋這個我失蹤或什麼的? – 2014-11-06 18:38:17

+0

所以這個問題似乎與使用pool.query直接相關。我改變了我的代碼先執行pool.getConnection,然後在連接上運行查詢而不是池,並且10分鐘斷開連接不會發生。我在這裏提出了問題:https://github.com/felixge/node-mysql/issues/942 – 2014-11-07 17:44:22

回答

0
setInterval(function() { 
    db.query('SELECT 1'); 
}, 300000); 

EXCUTE爲每5分鐘的查詢保持連接活,所以可能解決您的問題