개요
- RDS란?
Amazon Relational Database Service의 약자로 클라우드 상에서 제공되는 관계형 데이터베이스 서비스임
다양한 관계형 데이터베이스 엔진을 지원함
1) Mysql
2) PostgreSQL
3) MariaDB
4) ORACLE
5) Amazon Aurora
6) MS SQL Server
cf) RDS에 포함되지 않는 NoSQL 역시 AWS에서 제공하며, key-value 방식의 DynamoDB 뿐 아니라 인 메모리 방식의 ElastiCache, Redis와 그래프 SQL 기반의 Neptune 등이 있음
- RDS의 특징
RDS는 클라우드 기반의 데이터베이스로써, 일반적으로 웹서버에 설치해 운영하던 DB와는 조금 다른 작동 방식으로 구성됨
일반적인 RDB 구성 과정
1) 서버 구축
2) 서버 접속 및 DBMS 설치
3) DBMS 설정 파일 변경
4) DBMS 재실행
5) DBMS 접속 및 계정 및 권한 설정 (PostgreSQL은 접속 전 계정 및 권한 설정)
6) 서버 접속 종료 후 개발/운영 환경 접속 테스트
RDS 구성 과정
1) DBMS 설정 파일 생성 (기본 설정 이용 시 건너뜀)
2) RDS 구성
3) 네트워크(VPC) 환경 설정
4) 개발/운영 환경 접속 테스트
- RDS 시작하기
엔진 옵션
: 위 언급한 6개 엔진 중 한 가지를 골라, 엔진의 버전을 지정할 수 있음
템플릿
: RDS의 세부 설정을 이용하려는 목적에 맞게 불러올 수 있음(프로덕션, 개발/테스트, 프리티어)
설정, 인스턴스 클래스, 스토리지, 가용성 및 내구성
: 구축하는 RDS 인스턴스의 이름과, 접속 가능한 DBMS 계정 정보 생성(설정)
: 구성할 RDS의 인스턴스 타입으로 일반적으로 메모리 최적화 클래스를 사용하는 것이 권장되며, 데이터 연산도 고려해야 하는 경우라면 스탠다드 클래스를 적용함(인스턴스 클래스)
: 사용할 SSD의 성능과 크기 설정(스토리지)
: 다중 AZ 배포, 즉 대기 인스턴스턴스를 생성하여 장애 발생 시 다른 가용 영역에 있는 대기 인스턴스를 메인 인스턴스로 자동 전환하는 기능 설정(가용성 및 내구성)
연결 및 추가 구성
: VPC를 포함해 서브넷, 보안그룹 설정 진행
: 인스턴스가 배치될 메인 가용 영역 지정
: 경우에 따라 DBMS 권장 포트인 3306 포트 대신 다른 포트 사용하고자 하는 경우 '추가 구성' 버튼 눌러 다른 포트 지정 가능
: 그외 초기 데이터베이스 이름, DB 파라미터 그룹, 옵션 그룹, 백업, 모니터링, 로그 내보내기, 유지관리, 삭제 방지 등 설정 가능
- 운영 중인 RDS 접속/변경하기
RDS가 작동하기 시작하면, RDS 이름을 클릭하여 세부 화면 접속 가능
AWS가 생성해준 내 RDS의 엔드포인트를 Host로 사용하여 연결할 수 있음
MariaDB/MySQL인 경우 아래 명령어로 DB 접속 가능
mysql -u root --host={엔드포인트} -p
- 정리
AWS RDS를 이용해 DB를 관리하면 서비스가 커지거나 할 때 유연하게 자유로운 확장이 가능해 편리한 것 같다.
나중에 MySQL이나 MariaDB를 이용해 프로젝트를 만들 때, AWS의 RDS를 사용해 보면 좋을 것 같다.