AWS S3, RDS 기본 셋팅

jinvicky·2023년 12월 19일
0
post-thumbnail

읽기 전

해당 포스팅은 이론보다 순수한 시행착오 기록입니다.

S3 생성

파일 업로드를 할 공간이 필요해서 S3 Bucket을 생성해보자.
설정을 보다 보면 이 옵션은 이렇게 설정하는 게 맞나? 싶을 때가 많다. 생성 후 수정이 골치아프니까.

s3 버킷 생성 참고
https://celdan.tistory.com/36

위 블로그로 버킷을 생성한 뒤에는 아래를 따라한다.
https://gaeggu.tistory.com/33

AWS, EC2 VS. RDS ?

요약하자면 EC2가 더 싸고, RDS는 비싼 대신 전문 기능들을 더 제공한다.
참고
https://www.smileshark.kr/post/amazon-ec2-vs-amazon-rds-how-to-choose-right-hosted-database

뭘 쓸까 하다가 사수한테 여쭤봤더니

"왜 굳이 ec2를?" 니가 직접 다 커스텀 할 게 아니면 걍 rds로 해~

RDS (Mysql) 생성

그런고로 rds를 연동해보자. 디비는 Mysql을 사용하겠다.

아래 사이트를 따라한다. (Spring boot 디비 연동까지)
https://velog.io/@u-nij/Spring-Boot-AWS-RDS-MySQL-연동하기

쭉~ 따라하다가 보안그룹 부분은 일단 스킵했다.

내 로컬 PC에서 접속하려면 아래 처럼 보안 그룹 생성 > 대상에 내 ip 옵션을 select 하면 된다.

보안 그룹이 중요하긴 한데, 연결 빨리 하려고 일단 디비버에 연동을 했다.
aws 가서 엔드포인트와 포트를 메모해둔다.


1. Connect by 를 Host로 설정한다.
2. Server Host에 아까 엔드포인트 붙여넣고 Database에 이름 추가.
3. 계정 정보 넣는다. => 나의 경우 admin/비밀번호
4. Test Connection 눌러서 확인


커넥션 성공하면 완료

AWS DB + Spring boot

프로젝트 gradle 설정을 초기에 db 관련을 추가하고 생성했더니 이거 연결을 안하고 안 돌아간다.

Gradle 설정 추가는 쉬우니까 제발 작게 시작하자.

얼른 프로젝트랑 연결을 해보자.

전체 프로젝트 구조 한번 찰칵

application.yml에 아래 설정 추가

# DB 관련
spring:
    datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://{엔드포인트}:{포트번호}/{(초기)데이터베이스}?serverTimezone=Asia/Seoul&characterEncoding=UTF-8
        username: {마스터 사용자 이름}
        password: {마스터 암호}

에러) 패키지명 변경했더니 실행이 안됨.

해결) 인텔리제이 우측의 Gradle 탭 가서 build 누르면 끝.

출처) https://sanghye.tistory.com/30


성공적으로 프로젝트 실행 완료. (Git에 application.yml 정보는 올리지 말자!)

다음 포스팅에는 S3 테스트를 할 예정이다.

profile
Front-End와 Back-End 경험, 지식을 공유합니다.

0개의 댓글