🔥 문제상황
분명 프리티어 RDS를 사용하는데 요금이 발생합니다. 돈이 없는 저는 공짜로 쓰고싶습니다.
🤔 프리티어는 공짜인데 왜 돈이 나올까?
프리티어는 많은 사람들이 토이 프로젝트, 포트폴리오, 학습 등의 배포를 목적으로 사용합니다. 저도 현재 포트폴리오 용 DB가 필요해 자주 애용하고 있습니다. 그런데 사실 프리티어가 무제한이 아닙니다.
RDS 생성 페이지를 보시면
사진처럼 무료 사용 용량이 기제되있습니다. 또 인스턴스 구성 탭을 보면
1기가의 메모리를 가진 서버를 빌려줍니다. t3, t4g등 인스턴스 유형에 따른 차이점도 있는데 해당 포스팅에선 넘어가겠습니다.
그리고 가장 중요한 퍼블릭 엑세스입니다.
이 설정 때문에 요금이 부과되는겁니다. 정확히는 퍼블릭 엑세스를 허용하면 해당 RDS를 실행시킨 서버에 Ipv4 주소가 부여되는데 현재 Ipv4주소의 고갈로 인해 주소값이 상승해 RDS에서도 요금이 부과되는 겁니다. 그래서 생성 시 퍼블릭 엑세스를 비활성화 해주시면됩니다.
✨ 퍼블릭 엑세스 비활성화 후 DB 접근 방법
연결 탭에서 EC2 컴퓨팅 리소스에 연결 설정 후 EC2 인스턴스를 선택해 주시면 됩니다. 나머지 설정은 동일하게 설정해주시면 이제 EC2에서 mysql에 접근할 수 있습니다.
EC2 인스턴스에 접속 후
mysql -u <마스터 사용자 이름> -p
입력 후 설정한 비밀번호를 입력하면 위 화면과 같이 mysql에 접속할 수 있습니다. 그리고 인바운드 설정에서 3306번 포트를 열어주고 환경변수가 까지 만져주면 다시 DB를 접속할 수 있습니다.
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://<연결한 EC2 퍼블릭 주소>:3306/<생성한 DB 이름>
username: <마스터 이름>
password: <비밀번호>