• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    해결됨

[Tip] NAS와 같이 외부의 DB에 연결하는 경우

23.04.28 12:10 작성 23.04.28 12:11 수정 조회수 890

1

Environment

- Synology NAS
    - code-server
    - MySQL(mariaDB)

- Node.js@latest | v18.16.0
- npm@latest | v9.5.1
- nvm@latest | v0.39.3

sequelize 사용 시, 로컬이 아닌 외부 DB에 연결하는 경우

저 같은 경우, Synology NAS로 code-server를 사용하고 있습니다. 저와 비슷한 환경에서 개발하시는 경우, 포트 설정에 애먹으시는 분 있을까봐 메모 납깁니다.

  • db의 port를 방화벽에서 해제하기

  • 해당 포트 포트포워딩(공유기)

참고로, phpMyAdmin이나 WorkBench에서 외부 DB에 접근이 가능한데, squelize로 접근하면 ERROR: connect ETIMEDOUT과 같은 메시지가 출력되는 경우가 있는데, 저는 아래 방법으로 해결할 수 있었습니다.

(위 에러메시지는 host는 찾았지만 DB를 찾지 못했거나, DB가 있어도 접근할 수 없을 때 출력된다고 합니다.)

{
    "development": {
        "username": "slackk",
    "password": process.env.DB_PASSWORD,
    "database": "slack-db",
    "host": "***.***.***.***",  //IP
    "port": 3307,   //source|target 다를 경우 별도로 지정
    "dialect": "mysql"
  }
}

port를 별도로 지정해주어야 합니다.

 

  • ERROR: getaddrinfo ENOTFOUND {IP address} 메시지가 출력되는 경우

    host에 입력한 주소 문제입니다.

답변 0

답변을 작성해보세요.

답변을 기다리고 있는 질문이에요.
첫번째 답변을 남겨보세요!