← 전체 글로 돌아가기

웹 개발

데이터베이스 연결 문제, 환경별로 달라지는 이유

웹 개발에서 로컬과 배포 환경의 연결 문제를 구분하고 빠르게 해결하는 방법을 정리했습니다.

웹 개발을 하다 보면 연결 문제는 가장 답답하다. 로컬에서는 잘 되는데 배포하면 에러가 난다. 이렇게 되면 뭘 먼저 봐야 할지 막힌다.

핵심은 연결 문제를 크게 보지 않는 것이다. 사용자가 영향받는 부분과 로그 차이를 먼저 분리해서 봐야 한다.

사용자 입장에서 뭐가 안 되는지 확인하기

연결 문제가 반복된다면 확인 순서를 고정해두자. 감으로 접근하면 같은 실수를 반복한다.

먼저 볼 값들:

  • 사용자가 마주치는 에러 화면
  • 정상일 때의 기능이 어떻게 동작하는지
  • 명령 실행 결과와 응답 상태 코드

환경 차이를 정확히 파악하기

연결 문제는 보통 환경 차이에서 나온다. 로컬 머신에서는 localhost가 잘 되지만 원격 서버에서는 호스트명이나 포트가 달라야 한다.

npm run build
# 배포된 서버에서 실제 요청이 어디로 가는지 curl로 확인해본다

환경 변수 설정을 확인하는 게 가장 빠르다. .env 파일이 제대로 로드되고 있는지, 배포 환경에서는 어떻게 설정되어 있는지 체크리스트를 만들어두자.

실패하는 상황을 정확히 재현하기

연결 문제를 해결하려면 일관되게 재현할 수 있어야 한다.

  1. 먼저 같은 조건에서 에러가 다시 나는지 확인한다.
  2. 로그나 응답에서 뭐가 다른지 구체적으로 메모한다.
  3. 여러 방법으로 마지막 확인을 한다: 공개 URL, 빌드 결과, 실제 데이터베이스 요청.

정리하며

연결 문제는 보통 설정 실수다. 한 번 확인 순서를 정해두면 다음부터는 훨씬 빠르게 해결된다. 문제를 해결할 때마다 기록을 남겨두면 패턴을 찾을 수 있다.