2013-08-12 9 views
2

응용 프로그램에 node.js를 사용하고 있으며 사용자가 응용 프로그램에 연결할 수 있도록 mysql도 사용하고 있습니다.Node.js 응용 프로그램이 mysql과 충돌 함

저는 로컬에서 응용 프로그램을 사용하고 있었고, 충돌이 전혀 없었습니다. 아무런 문제가 없었습니다.

오늘 저는 js 서버를 내 웹 서버의 전용 서버와 클라이언트에 넣으려고했습니다. 이제이 업로드되는

, 나는 서버를 시작하려고하지만, 이러한 역 추적으로 몇 초 후에 충돌 :

events.js:48 

    throw arguments[1]; // Unhandled 'error' event 

Error: Connection lost: The server closed the connection. 
    at Protocol.end (/root/node_modules/mysql/lib/protocol/Protocol.js:73:13) 
    at Socket.onend (stream.js:80:10) 
    at Socket.emit (events.js:88:20) 
    at TCP.onread (net.js:388:51) 

연결 코드는 간단하다 :

var mysql = require('mysql'); 
var connection = mysql.createConnection({ 
    host : 'hostname', 
    user : 'username', 
    password : 'password', 
    database : 'database', 
}); 
connection.connect(); 

내가 시도 연결 직후에 내 DB에 열을 추가하면 정상적으로 작동합니다. js 서버와 다른 서버에있는 데이터베이스는 연결을 허용하고 열을 추가합니다. 나는이 지역에서 일하고 있어요 동안 이러한 오류가없는 이유를 모르겠어요

...

+0

는이 connection.connect (기능 (ERR) { 을 console.log (ERR) }을) 시도 할 수 있습니다; 오류가 표시되는지 확인하십시오. – Kishore

+0

방금 ​​"null"이 인쇄 된 다음 잠시 후 서버가 손상되었습니다. – tho

+0

어떤 NPM 모듈을 사용하고 있습니까? – Kishore

답변

0

는 MySQL 서버에 열려있는 연결을 확인합니다. 나는 비슷한 문제가 있었고 문제는 내가 연결을 풀지 않았다는 것이 었습니다. 따라서 열려있는 연결 수가 150 연결 제한에 도달하면 충돌이 발생합니다. 열려있는 연결의 수를 확인하려면 사용

select * from information_schema.processlist; 
관련 문제