Spring Boot AWS RDS 연결 및 사용방법

fever·2024년 5월 30일
0

팀프로젝트를 진행하는데, 많은 데이터들을 때문에 미리 서버를 세팅하고 가려고 한다.
여기서 포인트는 서버가 다운돼도 데이터가 초기화 되지 않고 데이터서버가 돌아가는 것!
그래서 RDS를 사용해 데이터베이스를 관리하고 EC2로 백서버를 배포하고자 한다!

RDS란?
Amazon RDS(Relational Database Service)는 Amazon Web Services(AWS)에서 제공하는 관리형 관계형 데이터베이스 서비스로 RDS를 사용하면 데이터베이스 인프라의 설정, 운영 및 확장에 필요한 대부분의 작업을 자동화하여 더 쉽게 관리할 수 있다.

🛠️ AWS RDS 설정

  • AWS에 가입 후, RDS 대시보드로 들어오기

0. 지역 서울로 설정

1. 데이터베이스 생성 후 설정 및 DB 선택

  • 이번 프로젝트는 늘 쓰던 MySQL로 선택했다.

2. 템플릿 프리티어 선택

  • AWS에 가입하면 일정기간 프리티어를 제공하니, 꼭 프리티어로 사용!

3. DB 식별자, 사용자, 암호 세팅

  • 구분하기 좋고, 본인이 알 수 있는 이름으로 지정해야함
  • 특히 사용자 이름이랑 암호는 연결에 필수적이라 복사붙여 넣기 필수!

4. 인스턴스 구성

  • db.t3.micro 설정

5. 스토리지 구성

  • 프리티어에서 제공하는 20G로 설정
  • 스토리지 자동 조정 해제 (20G 이상 초과 못하게)

6. 연결 설정

  • 퍼블릭 액세스 반드시 예로 설정
  • 보안그룹은 다시 설정할 거라 일단 그룹 만들어줌

7. 데이터베이스 인증

  • 설정한 암호를 사용해서 다른 사람들도 접속 가능하게

8. 추가 구성

  • 스프링부트에서 연결할 때 초기 데이터베이스가 필요하기 때문에 초기 데이터베이스 이름 필수
  • 프로젝트에서 사용할 데이터베이스 이름으로 설정
  • 백업은 돈 나갈 수 있으니 자동백업 취소
  • 이후 생성하기 클릭! 빠르면 5분 느리면 10분정도 db가 만들어진다.

9. 보안그룹 설정

  • db 식별자 > 보안그룹 > 그룹 id > 인바운드 규칙 편집 > 사용자 지정 tcp 추가


  • 마스터 이름과 암호만 알면 접근 가능하게 설정

💻 Spring Boot 연동

0. 엔드포인트 복사

1. db 플러그인에 연동

  • vscode를 사용중인데, 아래의 플러그인을 사용했다.
  • db 이름은 자유 (플러그인이 인식하는 나만의 이름임)
  • 호스트에 엔드포인트를 넣어주고, 유저이름과 비밀번호엔 아까 복사해두라고 했던 마스터이름과 암호를 넣는다.
  • 커넥션을 누르면, 추가구성에서 설정한 데이터베이스가 들어와있다!

2. 스프링부트 설정

application.properties

spring.datasource.url=jdbc:mysql://엔드포인트:3306/추가구성DB이름
spring.datasource.username=마스터이름
spring.datasource.password=비밀번호
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
spring.jpa.hibernate.ddl-auto=update

3. 스프링부트 실행 및 확인

  • 이후 서버를 실행하고, 기존에 만들었던 엔티티가 생성되는지 체크한다!
  • 문제 없이 생성되고 연동되면 끝!

profile
선명한 삶을 살기 위하여

0개의 댓글