연결 끊김: Node.js에서 MySQL 연결 끊김 문제 해결
Node.js 사용자는 "연결 끊김: 서버가 연결을 닫았습니다. mysql 모듈을 사용할 때 " 오류가 발생했습니다. 이 문제는 종종 특정 시간 범위(예: 자정부터 오전 2시 사이) 내에서 서버가 TCP 연결을 갑자기 종료할 때 발생합니다.
원인
오류는 다음을 나타냅니다. Node.js와 MySQL 서버 사이의 연결이 일반적으로 예기치 않은 연결 끊김 또는 서버로 인해 서버에 의해 끊어졌습니다. 다시 시작하세요.
해결 방법
이 문제를 해결하려면 끊어진 연결을 자동으로 감지하고 다시 설정하는 연결 처리 메커니즘을 사용할 수 있습니다. 예는 다음과 같습니다.
var db_config = { host: 'localhost', user: 'root', password: '', database: 'example' }; var connection; function handleDisconnect() { connection = mysql.createConnection(db_config); connection.connect(function(err) { if (err) { console.log('error when connecting to db:', err); setTimeout(handleDisconnect, 2000); } }); connection.on('error', function(err) { console.log('db error', err); if (err.code === 'PROTOCOL_CONNECTION_LOST') { handleDisconnect(); } else { throw err; } }); } handleDisconnect();
설명
이 솔루션에서는
이 연결 처리 메커니즘을 구현하면 애플리케이션이 원활하게 연결되도록 할 수 있습니다. 서버를 다시 시작하거나 유지 관리 기간 동안에도 일시적인 연결 손실을 처리하고 MySQL 데이터베이스에 대한 안정적인 연결을 유지합니다.
위 내용은 MySQL을 사용할 때 내 Node.js 앱에 '연결 끊김: 서버가 연결을 닫았습니다' 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!