본문 바로가기

AWS

[AWS] RDS 설정하고 연결 하기 + Spring Project(Feat. MySQL, Intellij)

728x90
반응형
SMALL

RDS란?

  • AWS가 제공하는 관계형 데이터베이스 서비스 이다.
  • Relational Database Service의 약자이다.
  • 프리 티어 계정을 사용할 지 매월 750시간 무료로 사용 할 수 있다고 한다.

RDS Setting

RDS 인스턴스 생성

  • AWS 콘솔로 이동 후 RDS 검색

RDS 화면

  • 해당 화면에서 데이터베이스 생성 버튼 클릭

 

데이터베이스 생성 화면

  • 데이터베이스의 생성 방식을 선택해야 한다.
  • 본인은 표준 생성을 선택

 

엔진 옵션

  • 엔진 옵션 선택
    • 본인은 MySQL 을 선택
    • 학습 용이기에 MySQL 을 사용하였고, 프로젝트 또한 MySQL 사용하기 때문이다.
    • Aurora 라는 엔진이 있는데 월 12만원 정도의 결재를 하지만 엔진 관리 등을 AWS 에서 해주기에 성능이 좋은 것으로 이해하고 있다.

엔진 버젼 선택

  • 해당 토글을 누르면 MYSQL 버젼을 선택 할 수 있다.

 

템플릿 선택

  • !!!!!프리티어 선택!!!!!!

 

설정 화면

  • 해당 설정 화면에서는 DB 인스턴스의 이름(식별자)
  • 마스터 사용자의 이름 (user)
  • 마스터 암호 (비밀번호)
  • 위 항목들을 입력해야한다 특히 마스터 암호의 경우 절대 까먹으면 안된다.

 

스토리지 화면

  • 스토리지의 경우 20GB를 넘겨서 작성 할 수 있지만 프리티어의 경우 20GB 이다.
  • 위 용량이 넘어가면 과금이 나올 수 있으니 유의 해야한다.

스토리지 자동 조정 활성화

  • 위 스토리지 자동 조정 활성화에 체크가 되어있으면 AWS 내부에서 자동으로 조절하여 과금이 나올 가능성이 있다.
    • 상황에 따라서 체크 해제(이게 안전한 방법!!!!!!!!!)

 

연결 페이지

  • 어차피 이 부분은 다시 설정 할 수 있기 때문에
  • 해당 페이지에서 중요한 것을 퍼블릭 엑세스를 예 해주는 것 

추가 구성 페이지

  • 초기 데이터베이스의 이름을 설정 해주어야한다.
  • 위에서 작성한 이름은 데이터베이스의 이름은 AWS 인스턴스의 이름이고 지금의 페이지에서 적는 데이터베이스의 이름이 DB의 이름이라고 생각하면 된다.
  • 여기에 아무 이름도 적지 않으면 DB를 생성 하지 않음!

위 와 같은 세팅으로 생성을 해주면 된다.


RDS 파라미터 생성

  • 인스턴스 생성을 마치고 나면 추가적으로 파라미터 설정을 해주어야 하는데 이 파라미터 그룹을 설정 함으로써 DB 를 설정 할 수 있다.

 

파라미터 그룹 생성 페이지

  • 파라미터 그룹 생성  클릭

 

그룹 생성 페이지

  • 그룹 패밀리는 내가 생성한 DB 인스턴스와 같은 버젼을 선택
  • 그룹 이름을 작성 (그룹을 만들었을 때 식별자)
  • 설명도 작성
  • 그다음 파라미터 그룹 생성 페이지 로 이동 후 생성한 그룹 선택

 

파라미터 그룹 편집

  • 해당 파라미터 그룹을 통해
    • timezone : 시간 대 설정
    • character : 문자처리
  • 등을 바꿀 수 있다.
  • 위 사진에서 편집 선택

 

파라미터 편집 하는 페이지

  • 파라미터 필터링에서 내가 편집하고자 하는 파라미터를 검색
  • 먼저 time_zone 검색

time_zone 검색 했을 때

  • 허용된 값들을 확인 하고 본인은 Asia/Seoul 이라는 값을 추가
  • 그 다음 character 를 검색

 

 

character 검색 화면

 

  • 허용 된 값을 잘 확인 하고 값을 입력하면 됨.
  • 많은 블로거들이 utf8mb4 로 변경 하라고 한다. (이모지를 쓸 수 있다고 한다.)
  • 아래 세팅은 해당 블로그를 보고 확인 한 값
 

[AWS] RDS설정 하는 방법

들어가기 전에.... 백엔드/서버 개발자, DevOps, DBA 같은 직군은 데이터베이스를 다뤄야 하는 경우가 많다. 하지만 사내서버에 세팅하기에는 하드웨어 비용이나 관리 비용이 많이 들어가기고 하고

jih3508.tistory.com

  • utf8mb4
    • character_set_client
    • character_set_connection
    • character_set_database
    • character_set_filesystem
    • character_set_results
    • character_set_server
  • utf8mb4_general_ci
    • collation_connection
    • collation_server

RDS 파라미터 데이터베이스 인스턴스에 연결

  • 파라미터를 생성 및 수정을 완료 했다면
  • 데이터베이스 -> 생성한 DB 인스턴스 -> 수정
  • 으로 이동 한다.

이동 한 페이지

  • 해당 페이지에서 밑으로 내리다 보면
  • 추가 구성 에 데이터베이스 옵션에 DB파라미터 그룹 을 선택 할 수 있다.

DB 파라미터 그룹

  • 해당 파라미터를 방금 생성한 파라미터로 변경 해주고 밑으로 내려서 계속

 

DB 인스턴스 수정 확인

  • 언제 수정을 시작 할 지를 정해야 한다.
  • 즉시 적용의 경우 내가 설정한 파라미터의 값이 비동기로 즉시 적용이 된다.
  • 즉시 적용을 선택 했을 경우 많은 블로거 들이 재부팅을 해주라고 한다.

재부팅

RDS 보안 그룹 설정

데이터베이스의 보안 그룹을 지정
보안 그룹을 선택
인바운드 규칙 편집 선택

 

보안 그룹 생성 해주기

  • 보안 그룹에 인바운드 규칙을 통해 내부 접속을 설정 할 수 있다.
  • 규칙 추가를 통해 만들 수 도 있다.
  • 본인은 모든 트래픽에 태해서 접근 할 수 있게 설정 했다. (학습용으로 사용 해 보기 위해 이와 같이 했지만 보안성은 꽝이라는 생각이 든다.)

본인 설정

 



RDS 연결 하기

  • Intellij를 통해 연결 해 보고자 한다.

 

인텔리제이

  • 오른쪽 끝에 있는 Database를 선택
  • + 를 누르고 Data Source
  • MySQL 선택

인텔리제이 연결 모달 창

  • Host : localhost 값이 있는 부분을 RDS의 엔드포인트 값 넣어주기

엔드포인트 위치

  • port: 3306 (RDS 생성 할때 따로 변경 하지 않았다면 이 포트번호를 사용)
  • User: RDS를 생성 할 때, 만들어준 사용자의 이름을 넣어주면 된다. (만약 다른 User 를 만들었고 사용 하고 싶다면 그 USER 이름으로 대체)
  • password: RDS 생성 했을 때, 설정 한 마스터 암호를 입력
  • Database: RDS 생성 할때 추가 구성 지정 해준 이름을 지정 (헷갈린다면 위 설정하기 부분 다시 확인)
  • 다 작성 하면 Test Connection 클릭
  • 실행 가능 하다 이제


RDS + Spring Project에 연결

application.yml

application.yml 파일 세팅

  • Spring 프로젝트에서 RDS 를 연결 하는 세팅
  • password 는 마스터 암호를 사용

 

728x90
반응형
LIST