본문 바로가기
Web/AWS

AWS RDS(Relational Database Service)

by joooing 2021. 3. 10.
반응형

RDS ❓

RDS는 Relational Database Service의 줄임말인데, 이름 그대로 AWS에서 제공하는 관계형 데이터 베이스 서비스이다.

 

이걸 굳이 왜 쓰는 걸까?

앞서 배운 EC2에 MySQL같은 관계형 데이터베이스 엔진을 설치해두면, RDS를 사용할 필요가 없는게 아닐까? 하는 생각이 들 수도 있다. 그렇다면 대체 어떤 이점이 있길래 쓰는건지부터 한번 살펴보자.

 

우선 EC2 인스턴스에 Database를 직접 설치해서 데이터를 관리하게되면, 유지보수나 버전관리, 데이터 백업 등 필요한 모든 작업들을 일일이 사용자가 처리해야 한다.

 

하지만, RDS를 사용하면 차를 렌트하듯이 유지보수같은 일들은 AWS에 맡길 수 있게 된다. 사용자는 그냥 초기설정만 하고, Database에 저장된 데이터들을 관리하는 일에만 집중할 수 있게 되는 것이다. RDS에서는 MySQL 뿐만 아니라 ORACLE, Amazon Aurora, PostgreSQL 등 다양한 데이터베이스 엔진을 고를 수 있게 하기 때문에 굉장히 편리하고 강력한 서비스이다.

 

이 외에도 AWS 홈페이지에 가보면 더 많은 장점들을 소개하고 있다.

 

 

 

 

실습 - RDB 인스턴스 생성하고 연결하기

RDB를 사용하려면 먼저 데이터베이스 엔진을 사용하는 DB 인스턴스를 생성한 뒤, 로컬 환경에서 클라이언트를 활용하여 DB 인스턴스에 연결하면 된다. 이 글에서는 MySQL 엔진으로 실습해보고자한다.

 

1. Database 인스턴스 생성
2. Database 연결

 

DB 인스턴스 생성

1. RDS 서비스 찾기

서비스 탭에서 RDS를 찾아 클릭한다.

2. Database 생성

데이터베이스 화면에서 '데이터베이스 생성' 버튼을 누른다.

 

3. MySQL 엔진

엔진 옵션을 MySQL로 선택하고, 설정부분에 사용자 이름, 암호 등을 입력해준다. 여기서 암호랑 이름은 나중에 접속할때 쓰이니까 반드시 기억해둬야한다!! 템플릿은 마찬가지로 과금 방지를 위해 프리티어로 설정했다., 암호는 '8자 이상의 인쇄 가능한 ASCII 문자. 다음은 포함할 수 없습니다. /(슬래시), ‘(작은따옴표), "(큰따옴표) 및 @(앳 기호)' 라는 제약조건이 있으니 맞춰서 잘 입력하자..!

 

 

보안그룹 설정도 나중에 EC2 인스턴스와 연결하는 과정에서 에러가 나거나 할 수 있기 때문에 잘 기억해두자. 일단은 default로 해둬도 상관은 없다. 추가구성에서 초기 데이터베이스를 지정해주면, 나중에 DB와 연결했을 때 이미 데이터베이스 하나가 생성되어있는걸 확인할 수 있을 것이다. 테스트용으로 test 라는 초기 DB를 하나 만들어줬다. (반드시 해야하는건 아님)

 

 

이렇게 모든 설정이 끝나면 데이터베이스 생성 버튼을 누르고, 상태가 사용가능으로 변할 때까지 기다리면 된다. 참고로 생각보다 굉장히 오래걸린다. 그리고 혹시 너무오래걸리는데..?! 싶다면 위쪽의 새로고침모양 버튼을 한번 눌러보자. 이미 다 되었는데 새로고침이 안된걸수도 있다..!

 

 

이제 DB 생성은 끝났으니, 터미널을 켜고 연결을 해보자!

 

 

DB 연결하기

1.  mysql 서버 켜기

$ mysql.server start

성공시 터미널창

2. DB 인스턴스 연결

대소문자 구분을 잘해서 아래 명령어를 입력해주면 된다. 대문자 P는 포트를, 소문자 p는 패스워드를 의미한다. 

mysql -u [마스터 이름] --host [엔드포인트 주소] -P [포트번호] -p

 

엔드포인트 주소, 포트번호는 연결, 보안 탭에서 확인할 수 있다. 마스터이름과 아까 기억하라고한대로 하고, 명령어를 입력하고 비밀번호를 입력하라고 나오는 부분도 그때의 비밀번호를 입력하면 된다. 

 

정상적으로 연결이 되면 아래처럼 mysql 서버가 실행되고, show databases; 를 했을 때 아까 초기 데이터베이스로 지정했던 test 도 보이는 것을 확인할 수 있다.

연결

반응형

'Web > AWS' 카테고리의 다른 글

Amazon S3  (0) 2021.03.10
Amazon EC2 (Elastic Compute Cloud)  (0) 2021.03.10
배포 (Deploy)  (0) 2021.03.10
Cloud Computing (클라우드 컴퓨팅), 온프레미스(On-premise)  (0) 2021.03.10

댓글