AWS RDS 데이터베이스 생성 ( AWS / RDS / Amazon Aurora / MySQL / DataBase / SQLGate )
🌜 Server/AWS & Linux

AWS RDS 데이터베이스 생성 ( AWS / RDS / Amazon Aurora / MySQL / DataBase / SQLGate )

728x90

안녕하세요. 그린주입니다 ๑'ٮ'๑
오늘도 힘차게 시작해보겠습니다!

 

개요

이번 글에서는 AWS RDS 데이터베이스 생성하는 방법을 공유하고자 합니다.


목차

AWS RDS 설명

RDS 데이터베이스 생성

보안 그룹 설정

SQLGate DB 연결


AWS RDS 설명

1. AWS RDS란 무엇인가?

RDS란 Amazon Relational Database Service의 약자로 AWS에서 제공하는 분산 관계형 데이터베이스입니다.

 

2. RDS를 사용하는 이유?

애플리케이션 내에서 관계형 데이터베이스의 설정, 운영, 스케일링뿐만 아니라 백업, 복구 등 복잡한 프로세스들도 손쉽게 관리할 수 있습니다.

 

자, 그럼 실전으로 들어가 보겠습니다.


RDS 데이터베이스 생성

AWS RDS 서비스에서 서울 리전을 선택한 후 데이터베이스 생성 버튼을 클릭합니다.


DB 생성 방식을 선택합니다.

"손쉬운 생성"은 DB 엔진만 선택하고, 추가적인 설정은 인스턴스 생성 후 변경하는 방법입니다.

저는 생성하면서 설정들에 대한 정보를 알아볼 것이므로 "표준 생성"을 선택했습니다.


DB 엔진을 선택하고, 버전을 선택해줍니다.

저는 Amazon Aurora / 5.7.mysql_aurora.2.07.2를 선택했습니다. 


템플릿은 어떤 용도로 인스턴스를 생성할 것인지에 따라 선택해줍니다.

여기서는  프로덕션을 사용합니다. 


DB 클리스터 식별자마스터 사용자 이름은 기본값 그대로 사용하였고, 마스터 암호를 입력합니다.


DB 인스턴스의 크기는 버스터블 클래스 중 가장 작은 t3.small를 선택했고, Aurora 복제본은 생성하지 않았습니다.

  선택한 DB 인스턴스의 크기에 따라 비용이 달라지게 됩니다. 처음에 작게 하고 필요에 따라 늘려가는 것을 추천합니다.


DB 연결 설정은 네트워크/보안, 백업, 암호화 등에 대한 설정입니다.

특별한 VPC가 없다면 기본 VPC로 설정하시면 됩니다. 서브넷 그룹 또한 마찬가지입니다.

퍼블릭 액세스는 외부에서 접근하는지에 따라 yes나 no로 설정하시면 됩니다.

데이터베이스 포트는 기본 3306으로 진행했습니다.


추가 구성에서 데이터베이스 옵션은 인스턴스 생성 후 만들어질 DataBase에 대한 설정입니다.

데이터베이스 이름을 지정하지 않으면 생성하는 DB 인스턴스에서 Amazon RDS가 데이터베이스를 만들지 않습니다.

그 외 추가 구성은 기본 설정 그대로 진행했습니다.


RDS 데이터베이스가 생성되었습니다.

생성 완료가 되면 아래 상태가 "생성 중"에서 "사용 가능"으로 확인될 것입니다.


보안 그룹 설정

데이터베이스에 접속하기 위해서는 해당 포트를 인바운드로 추가해줘야 합니다.

  데이터베이스 VPC 보안 그룹을 EC2 보안 그룹에 연결해주면 됩니다.


보안 그룹에서 -> 인바운드 규칙 탭 -> 인바운드 규칙 편집을 선택합니다.


아래와 같이 MYSQL/Aurora를 선택하면 포트가 자동으로 3306가 입력됩니다.

포트를 변경했다면 사용자 지정 TCP로 해당 포트를 입력합니다.

소스는 사용자 정의 -> 보안 그룹을 선택합니다. 현재 사용 중인 EC2와 같은 보안 그룹을 선택하면 됩니다.

  api를 통해 db를 조회한다면 해당 

 

여기까지 완료되었다면 접속이 가능한 상태로 설정이 된 것입니다.


SQLGate DB 연결

RDS 생성과 보안 그룹이 완료되면 DB에 접속이 가능합니다.

 

DB에 호스트(앤드포인트)를 입력하고 마스터 계정으로 연결합니다.


admin 계정으로 사용자와 데이터베이스를 생성하고, 사용자에게 데이터베이스 사용권한을 부여합니다.

// 사용자 추가 1
CREATE USER 'dbUser'@'localhost' IDENTIFIED BY '비밀번호';

// 사용자 추가 2
// 기존에 사용하던 계정에 외부 접근 권한을 부여하려면, 
// Host를 '%'로 하여 똑같은 계정을 추가한다.
CREATE USER 'dbUser'@'%' IDENTIFIED BY '비밀번호';

// 데이터베이스 생성
// default character set을 지정하지 않으면 한글이 깨져서 나오므로 주의해야 한다.
CREATE DATABASE 'database명' DEFAULT CHARACTER SET utf8;

// 사용자1에게 데이터베이스 사용권한 부여
GRANT ALL PRIVILEGES ON 'database명'.* TO 'dbUser'@'localhost' IDENTIFIED BY '비밀번호';

// 사용자2에게 데이터베이스 사용권한 부여
GRANT ALL PRIVILEGES ON 'database명'.* TO 'dbUser'@'%' IDENTIFIED BY '비밀번호';

생성한 d사용자로 새로운 d데이터베이스에 정상적으로 연결되었습니다.

성공!!


마무리

이렇게 AWS RDS 데이터베이스 생성하는 방법에 대해 적어보았습니다.
다들 성공하셨을까요?? 끝까지 파이팅입니다!


긴 글 봐주셔서 감사합니다!
오늘도 행복한 하루 보내세요 '◡'✿


참고

https://aws.amazon.com/ko/blogs/korea/optimizing-costs-in-amazon-rds/

https://hoing.io/archives/24482

https://victorydntmd.tistory.com/337

https://nickjoit.tistory.com/144

https://kitty-geno.tistory.com/30

https://kiljh.tistory.com/218


728x90
728x90