RDS 생성 후 로컬에서 접속하기 위해 필요한 설정들을 알아보자.
데이터베이스 생성 또는 수정 시 연결
- 추가 구성
에서 퍼블릭 엑세스 여부를 가능으로 해줘야 한다.
RDS 데이터베이스의 보안 그룹의 인바운드 규칙을 수정해줘야 한다. EC2
- 네트워크 및 보안
- 보안 그룹
에서 RDS에 할당된 보안 그룹을 선택한다.
여기서 인바운드 규칙을 편집하여 EC2 서버의 보안그룹과 내 IP를 설정해준다. 내 IP
대신 원하는 IP를 넣어도 된다.
여기까지 했으면 대부분 연결에 성공하는 것 같던데, 나는 아래 에러가 뜨면서 계속 연결에 실패했다.
Socket fail to connect to host:address=(host=~)(port=3306)(type=primary). Connection timed out: no further information
RDS의 서브넷이 private이면 외부에서 접속할 수 없다고 한다. 아마 AWS가 계속 업데이트 되면서 해당 설정의 default가 private이 된게 아닌가 싶다. 어쨌든간에 해당 설정을 public으로 설정해주자.
VPC
- 라우팅 테이블
에서 RDS가 사용하고 있는 테이블 선택 후, 작업
- 라우팅 편집
을 눌러주자.
여기서 라우팅 추가
를 하여 인터넷 게이트웨이를 클릭한다. 그러면 자동으로 완성되는 항목을 선택 후 저장하면 연결이 잘 되는 것을 확인할 수 있다!
[SPRING] AWS RDS Connection timed out, unable to connect to localhost 연결 오류 해결 방법