>데이터 베이스 >MySQL 튜토리얼 >Node.js MySQL ECONNREFUSED 오류: Unix 소켓을 사용하여 연결하는 방법은 무엇입니까?

Node.js MySQL ECONNREFUSED 오류: Unix 소켓을 사용하여 연결하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-03 11:34:12856검색

Node.js MySQL ECONNREFUSED Error: How to Connect Using a Unix Socket?

Node.js MySQL: 연결 시 "ECONNREFUSED" 오류 해결

Node.js를 통해 MySQL 서버에 연결을 시도할 때, "ECONNREFUSED" 오류가 발생하면 당황스러울 수 있습니다. 특히 동일한 시스템에 있는 PHP/Apache 서버가 오류 없이 작동하는 경우 더욱 그렇습니다.

이 오류의 원인을 조사하고 성공적인 솔루션을 제공하겠습니다.

도전

제공된 코드 스니펫에서, MySQL 호스트는 'localhost'로 정의되고, 머신의 MySQL 서버는 Unix 소켓을 수신합니다. 표준 TCP 포트가 아닌 '/var/run/mysqld/mysqld.sock'. 이러한 불일치로 인해 Node.js 애플리케이션이 TCP를 사용하여 연결을 시도할 때 "ECONNREFUSED" 오류가 발생합니다.

해결책

이 문제를 해결하려면 수정해야 합니다. TCP 포트 대신 Unix 소켓 경로를 지정하는 연결 옵션입니다. 연결 옵션에 다음 행을 추가하면 됩니다.

port: '/var/run/mysqld/mysqld.sock'

업데이트된 코드

var mysql_link = {
  host: 'localhost',
  port: '/var/run/mysqld/mysqld.sock', // Modified to specify Unix socket path.
  database: 'nodetest',
  user: 'root',
  password: 'xxx'
};

결론

올바른 연결 옵션을 지정함으로써 Node.js 애플리케이션이 성공적으로 연결되도록 할 수 있습니다. MySQL 서버를 복구하고 원활하게 운영을 계속합니다. 앞으로 이러한 오류가 발생하지 않도록 하려면 MySQL 서버의 구성을 확인하고 적절한 연결 매개변수를 사용하는 것이 중요합니다.

위 내용은 Node.js MySQL ECONNREFUSED 오류: Unix 소켓을 사용하여 연결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.