내 PC에서 RDS로 접근하기 위해서 RDS의 보안 그룹 설정이 추가적으로 필요합니다.
RDS의 세부정보 페이지에서 [VPC 보안 그룹]의 링크를 클릭합니다.
또 다른 창에서 EC2에 [보안 그룹]을 클릭합니다.
보안 그룹 목록 중에서 EC2에서 사용된 보안 그룹의 그룹 ID를 복사합니다.
RDS의 세부 페이지에서 링크를 통해 들어간 곳에서 [인바운드 규칙] -> [인바운드 규칙 편집]을 클릭합니다. 규칙 유형에서 MYSQL/Aurora
를 선택하면 자동으로 3306 포트가 선택됩니다. 그리고 EC2 보안 그룹의 ID를 추가하고 저장합니다.
RDS 정보 페이지에서 엔드 포인트를 확인하고, 미리 복사해 둡니다.
로컬에서 원격 데이터베이스로 붙을 때 MySQL
의 대표적인 GUI 클라이언트로 Workbench, SQLyog(유료) 등이 있습니다. 본인이 가장 좋아하는 툴을 사용하며, 저는 Workbench를 사용했습니다.
MySQL Workbench의 홈에서 + 버튼을 클릭하여 본인이 생성한 RDS의 정보를 차례로 등록합니다. 여기서 Hostname에는 방금 전에 복사한 RDS의 엔드 포인트를 등록합니다. 그리고 마스터 계정과 비밀번호를 등록한 뒤, 화면 아래의 [Test Connection]을 클릭해 연결 테스트를 합니다.
이제 MySQL Workbench에서 사용할 데이터베이스를 생성한 뒤, 생성한 데이터베이스를 클릭합니다.
그리고 데이터베이스가 선택된 상태에서 아래의 쿼리로 현재의 character_set
, collation
설정을 확인합니다.
show variables like 'c%';
다른 필드들은 utf8mb4가 잘 적용됐지만 다른 필드들이 제대로 적용되지 않았다면 직접 변경할 필요가 있습니다.
ALTER DATABASE 데이터베이스명
CHARACTER SET = 'utf8mb4'
COLLATE = 'utf8mb4_general_ci';
sudo yum intall mysql
mysql -u 계정 -p -h Host주소
저 같은 경우에는 다음과 같습니다.
# mysql -u 계정 -p -h 엔드포인트
mysql -u moon -p -h finalproject.civfgcdxitth.ap-northeast-2.rds.amazonaws.com
패스워드를 입력하라는 메시지가 나오면 패스워드를 입력합니다.
그러면 EC2에서 RDS로 접속되는 것을 확인할 수 있습니다.
RDS에 접속되었으면 실제로 생성한 RDS가 맞는지 간단한 쿼리를 실행합니다.
show databases;
이상으로 AWS RDS를 PC에서 접속해 봤습니다.