Node.js MySQL: "연결 끊김" 오류를 효과적으로 처리
Node.js에서 MySQL을 사용할 때 오류가 발생할 수 있습니다. 서버가 연결을 종료했음을 나타냅니다. 이 문제는 서버에 의한 TCP 연결 종료로 인해 자주 발생합니다.
오류 이해
오류는 일반적으로 다음과 같이 나타납니다.
Error: Connection lost: The server closed the connection. ...
Node.js 애플리케이션과 MySQL 서버 사이에 설정된 연결이 종료되었음을 나타냅니다. 예기치 않게 발생했습니다.
해결 방법
이 문제를 해결하려면 연결이 끊어졌을 때 자동으로 다시 연결하는 연결 처리 메커니즘을 활용할 수 있습니다. 다음은 서버 연결 끊김을 처리하는 방법을 보여주는 코드 조각입니다.
var db_config = { host: 'localhost', user: 'root', password: '', database: 'example' }; var connection; function handleDisconnect() { connection = mysql.createConnection(db_config); // Recreate the connection connection.connect(function(err) { if (err) { console.log('error when connecting to db:', err); setTimeout(handleDisconnect, 2000); // Delay before reconnecting } }); connection.on('error', function(err) { console.log('db error', err); if (err.code === 'PROTOCOL_CONNECTION_LOST') { // Lost connection handleDisconnect(); } else { throw err; } }); } handleDisconnect();
분석
추가 참고
handleDisconnect() 함수는 초기 연결 시도가 실패할 때 수동 또는 자동으로 호출할 수 있습니다. 이렇게 하면 예기치 않게 연결이 끊어지더라도 애플리케이션이 계속 작동할 수 있습니다.
이 연결 처리 메커니즘을 구현하면 연결 끊김으로 인해 Node.js/MySQL 애플리케이션이 중단되는 것을 방지할 수 있습니다. 이를 통해 프로젝트의 신뢰성과 안정성이 크게 향상될 수 있습니다.
위 내용은 Node.js MySQL 애플리케이션에서 '연결 끊김' 오류를 효과적으로 처리하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!