이 글에서는 Spring Boot 프로젝트의 내장 DB인 H2를 클라우드 기반의 PostgreSQL DB(Render)로 전환하고, 로컬 개발 환경에서 DBeaver를 통해 원격 DB에 접근하는 과정을 다룹니다.
H2에서 PostgreSQL로 전환해야 하는 이유
로컬 개발 환경에서는 H2와 같은 내장 DB를 사용하면 편리하지만, 실제 서비스 환경에서는 데이터 영속성을 보장하고 여러 사용자가 동시에 접근할 수 있는 독립된 DB 서버가 필요합니다.
Render는 PostgreSQL DB를 무료로 제공하므로 개인 프로젝트에 적합한 솔루션입니다.
Redner PostgreSQL 프로젝트 생성
PostgreSQL 새 프로젝트 생성
- Render 사이트에서 postgresql 프로젝트를 아래와 같이 생성합니다.




- 프로젝트가 성공적으로 생성되면 Connections 정보가 채워집니다.
- 해당 정보를 데이터베이스 연결에 활용합니다.
2. 스프링부트에 PostgreSQL 연동
1. PostgreSQL 드라이버 의존성 추가
Spring Boot가 PostgreSQL에 연결할 수 있도록 프로젝트에 드라이버 의존성을 추가해야 합니다.
build.gradle(Gradle) 파일에 postgresql을 추가해 주세요.
- 기존 h2 데이터베이스를 주석처리한 후 postgresql 데이터베이스로 변경하였습니다.
2. application.yml 설정 변경
- H2 관련 설정은 모두 지우고, Render에서 제공하는 PostgreSQL 연결 정보를 application.yml에 추가해야 합니다.
- src/main/resources/application.yml 파일에 다음 내용을 작성해 주세요. {}로 표시된 부분은 반드시 본인의 Render DB 정보로 바꿔야 합니다.
spring:
datasource:
driver-class-name: org.postgresql.Driver
url: jdbc:postgresql://{host_value}:5432/simple_iltf
username: simple_iltf_user
password: {password_value}
- spring.datasource.url: Render 대시보드의 External Database URL에서 호스트 주소를 복사하여 입력합니다.
- spring.datasource.username & password: Render DB 사용자 이름과 비밀번호를 정확하게 입력합니다.
3. 데이터베이스 연결 확인
로그 확인
- 위의 설정을 마친 뒤 프로젝트를 실행해 보았습니다.
- 로그를 통해 PostgreSQL 데이터베이스로 변경된 것을 확인할 수 있습니다.
디비버 연결 및 조회
추가로 백엔드와 DB 연결이 완료되었다면, DBeaver를 사용해 GUI 환경에서 데이터를 직접 확인하고 관리할 수 있습니다.
- Render에서 제공하는 Connections 정보를 바탕으로 데이터베이스 연결에 성공했습니다.
- 기존 테이블의 내용이 조회되는 것도 확인할 수 있습니다.
API 전송 테스트
백엔드와 데이터베이스 연결이 되었는지 확인하기 위해 API 요청을 보내 테스트를 진행하였습니다. 성공적으로 데이터를 조회하는 것을 확인할 수 있었습니다.
