상세 컨텐츠

본문 제목

AWS 프리티어 RDS 구축 w/ MySQL

생활코딩

by sosorine 2024. 1. 19. 19:44

본문

AWS에서는 RDS를 아래와 같이 소개한다.

 

Amazon Relational Database Service(RDS)는 Amazon Aurora, PostgreSQL, SQL Server 및 MySQL 중에서 선택한 관계형 데이터베이스를 손쉽게 운영하고 확장할 수 있는 완전관리형 오픈 소스 클라우드 데이터베이스 서비스입니다.

 

한마디로 AWS에서 DB 서비스를 제공한다. 로 이해할 수 있다.

 

aws.amazon.com을 접속하거나 aws 키워드로 구글링해보자.

 

aws 키워드 검색 / 구글링

 

AWS는 각 서비스를 프리티어, 즉 무료로 제공한다. / 물론, 서비스 품질은 그 정도 만큼만 제공한다. 그래도? 감지덕지. :)

AWS 프리티어 소개

 

AWS 사이트를 접속하였다면, 로그인을 하자. 

 

루트 사용자는 1인 개발자, IAM 사용자는 2인 이상 개발자용으로 이해하고 있다. / 본인의 상황에 맞게 선택하자.

 

AWS 계정이 없다면 "AWS 계정 새로 만들기"를 클릭하여 일련의 계정 생성 절차를 밟자.

 

기존의 생성 계정이 있다면 "루트 사용자 이메일 주소"에 본인의 이메일 주소를 기입하자.

 

 

루트 사용자 클릭 후, 로그인
본인 비밀번호 기입 후, 로그인 완료

 

로그인 후, AWS 홈페이지 우측 상단상 서비스 지역을 선택할 수 있다.

 

우리는 대한민국 국민. 따라서 아시아 태평양(서울)로 설정하자. / 서비스 지역 선택에 따라 서비스 품질이 바뀐다고 한다.

아시아 태평양(서울) 설정

 

AWS 홈페이지 검색창에서 RDS를 검색하여, 오토 브라우징되는 RDS 서비스를 클릭!

RDS 검색 후, RDS 서비스 클릭!

 

본격적으로 서비스를 이용하기 위해서는 데이터베이스를 생성해야 한다.

 

"데이터베이스 생성" 클릭!

데이터베이스 생성 클릭

 

아래 절차는 설명하기에 매우 장황하다. / 아니, 설명할 자신도 없고, 설명할 지식도 없다.

 

본인 개발환경에 적절한 스펙으로 DB를 생성하자. / DB 엔진유형 등

 

거듭 스크롤을 내려 선택지를 하나하나 앞에 마주하다보면 움츠러든다.  

 

이 선택지들은 CS, 즉 Computer Science라고 일컫을만한 지식이 필요하다고 한다.

 

비용없이 무료로, 쉽게, 간단하게, 체험을 목적으로 한다면 아래 절차를 따라가보자.

표준 생성 클릭 + MySQL 클릭

 

가장 중요한 옵션 선택사항이다. 프리티어를 꼭 확인하고 선택하자. / 그렇지 않으면, 요금 통지서를 마주할 것이다. 

프리티어 클릭!

 

향후, DB를 접속할 때 필요한 계정 정보를 설정하는 것이다. / 이미 누군가 생성한 것과 중복되면 안돼! 유일 값!

 

기입하고, 반드시 잊지말자. / 메모하는 것이 신상이 좋다. 그렇지 않아서 나는 다시 만들었다. 안 좋은 내 머리를 탓하리오..

DB 인스턴스 식별자, 마스터 사용자 이름, 마스터 암호 설정

 

프리티어는 인스턴스 구성을 최저사양으로 디폴트로 제공한다. / 프리티어라도 다른 선택지는 있지만, 글쎄..  

db.t2.micro 선택

 

스토리지 자동 조정 활성화를 체크 해제하자. / 프리티어 사용 성격과 반대 개념으로 보여진다. 자세히는 역시 모른다 :)

스토리지 자동 조정 활성화 디폴트 설정
스토리지 자동 조정 활성화 체크 해제

 

본인이 만든 DB를 개인적으로 사용하고 연결, 접근, 접속할 계획이라면, 퍼블릭 액세스를 "아니오"로 설정하고,

 

반대로 누구나 DB로 연결하여 데이터를 접근할 수 있도록 할 것이라면, 퍼블릭 액세스를 "예"로 설정하자.

 

퍼블릭 액세스를 "예"로 설정하는 것이 누구나 DB 데이터를 Delete, Insert, Update할 수 있다는 의미가 아니다.

 

불특정 다수가 내가 구성한 플랫폼에서 모 형태의 옵션을 제어하여 데이터를 조회할 수 있다는 뜻이다.

 

언변이 부족한 내가 설명하려니, 글이 장황해지고 조잡해진다.

 

알라딘과 같은 도서 검색 플랫폼 등 흔히 우리가 쓰는 검색 플랫폼을 예시로 하자면 이해가 될까.. 싶다. 

퍼블릭 액세스 설정 / "예"

 

MySQL을 DB엔진 옵션으로 활용한다면, 데이터베이스 포트를 "3306"으로 설정하자.

 

기타 데이터베이스는... 검색해보시라! / MS-SQL : 1433 / Oracle : 1521 / PostgreSQL : 5432 등.

 

DB를 아무나 접속하면 안된다. 나만 Delete, Insert, Update 기능으로 DB 데이터를 조작해야 한다! 암호 인증 설정!

 

데이터베이스 포트 기입 + 데이터베이스 암호 인증 옵션 선택

 

초기 데이터베이스 이름 기입. / 유일 값이어야 할 것이다. 중요하지 않다!

 

자동 백업을 비활성화하자.

/ 스토리지 자동 조정 활성화처럼  프리티어 사용 성격과 반대 개념으로 보여진다. 자세히는? 모른다. :)

 

삭제 방지 활성화는 DB 데이터 Delete가 아닌 DB 데이터베이스 자체에 대한 삭제를 말한다.

 

체험, 경험 성격으로 데이터베이스 생성하고 곧이내 삭제할 거라면 비활성화를 설정하고,

 

이 DB를 활용할 계획이 있다면 활성화하자! / 차후, DB를 삭제하려면 별도로 비활성화 재설정해야한다.

초기 데이터베이스 이름 기입
자동 백업 비활성화 + 삭제 방지 활성화 체크

DB 생성을 위한 설정을 마쳤다. 한번 더 본인이 설정한 사항을 검토? 확인하고 DB를 생성하자.

 

DB 생성 후, 약 3~5분?정도 생성 중으로 상태가 확인이 되고, 사용가능으로 바뀔 것이다. / 그간 개인용무 보시라. 

DB 생성 후, 상태 "생성 중"

 

DB 상태 "사용가능" 확인!

DB 상태 "사용가능"

 

DB는 생성하였지만, 이 DB는 아직 우리의 언어, 한글을 감당할 준비가 아니되시었다.

 

좌측 화면상 "파라미터 그룹" 클릭

파라미터 그룹 클릭

 

"파라미터 그룹 생성" 클릭

파라미터 그룹 생성 클릭

 

그룹 이름과 설명을 기입하고 "생성" 클릭! / 각 기입 문구는 중요하지 않다! 하지만 그룹 이름은 잠시 기억해두자.

그룹 이름, 설명 기입 후, "생성" 클릭

 

생성한 파라미터 그룹 클릭

생성한 파라미터 그룹 클릭

 

"파라미터 편집" 클릭 후, 파라미터 검색창에 char 기입.

파라미터 편집 클릭 후, 파라미터 검색창 char 기입

 

각 파라미터의 값을 모두 utf8로 수정하자. / 값이 0 혹은 1만 있는 것은 스킵! 무시!

파라미터 값 수정 / utf8

 

파라미터 검색창에 colla 기입 후, 파라미터별 값을 utf8_general_ci로 수정!

파라미터 검색창 colla 기입
파라미터별 값 수정 / utf8_general_ci

 

각 파라미터별 값을 수정 완료하였다면, 우측 상단의 "변경사항 저장" 클릭

파라미터별 값 수정 완료 후, 변경사항 저장 클릭

 

좌측 화면에서 "데이터베이스" 클릭 후, 우리가 생성한 DB를 클릭하자.

좌측 화면상 데이터베이스 클릭 후, 생성 DB 클릭

 

우측 상단의 "수정" 클릭

"수정" 클릭

 

DB 파라미터 그룹을 직전에 생성한 파라미터 그룹 이름으로 수정하고, / 파라미터 생성 시의 그룹이름을 기억하는가?

 

스크롤을 최하단으로 내려  "계속" 을 클릭하자

DB 파라미터 그룹 수정
"계속" 클릭

 

"즉시 적용" 선택 후, "DB 인스턴스 수정" 클릭

"즉시 적용" 선택 후, "DB 인스턴스 수정" 클릭

 

한글을 언어로 받아낼 수 있는 그릇인, 속이 빈 껍데기의 DB 생성이 완료하였다.

 

이제 DB에 접속!해보자. / MySQL 엔진옵션으로 설정했을 때를 가정하여 MySQL Workbench를 활용한다.

 

MySQL Workbench를 키워드로 구글링하자. 링크 클릭! 

MySQL Workbench 다운로드 페이지 검색

 

MySQL Workbench를 다운로드하자. / 본인 디바이스의 운영체제에 따라 적절히 다운로드! :)

MySQL Workbench 다운로드

 

다운로드 및 설치 후, MySQL Workbench를 실행하자. / 설치 따위는 부가설명 없다. 두 유어 셀프. 플리즈. :)

 

MySQL Connections 문구 옆에 있는 십자 문자표?를 클릭하자. / 아래 그림상 빨강 네모 표시 

MySQL Connections 문구 우측의 + 문자표 클릭

팝업되는 창에 DB에 접속하기 위해 필요한 파라미터를 기입하여야 한다.

 

참고사진 / DB 연결용 파라미터

떠오르는가? DB 생성 때 기억하고 있으라고, 자신없으면 메모하라고 한 그것들이 필요하다. 기입하라! 

 

기입을 완료하였다면, "Test Connection"을 클릭하자.

DB 연결에 필요한 파라미터 기입

 

그 외에도 필요한 파라미터, 앤드포인트와 포트는 AWS에서 본인이 생성한 DB 속성에서 조회 가능하다. 복사! 붙여넣기!

앤드포인트 및 포트 확인

 

 

"Test Connection"을 클릭하였는데, 에러 메시지가 뜬다. DB 서버에 접속할 수 없다! 라고 한다.

Cannot Connect to Database Server

 

해결하자. 다 했는데, 다 왔는데 여기에서 자빠질 수 없다.

 

AWS에서 생성한 DB의 보안 속성에서 VPC 보안 그룹이 보인다. 클릭.

VPC 보안 그룹 클릭

하단의 "인바운드 규칙" 클릭 후, 우측 하단의 "인바운드 규칙 편집" 클릭

인바운드 규칙 클릭 후, 인바운드 규칙 편집 클릭

"인바운드 규칙 추가" 를 클릭하여 추가된 두번째 행의 규칙 유형, 소스를 수정하고, 저장한다. / 아래 그림 참조

 

인바운드 규칙 추가 및 저장

 

다시 MySQL Workbench에서 "Test Connection" 을 클릭하자.  DB 접속이 성공적이다!

인바운드 규칙 추가 후, Test Connection 클릭

 

Test Connection 성공 후, 우측 하단의 "OK" 를 클릭하자.

 

MySQL Connection 구분에서 접속한 DB가 조회될 것이다. 이 DB가 AWS에서 RDS 서비스로 생성한 DB이다.

DB 연결 완료

 

여담으로, 계정당 하나의 RDS 서비스를 운영할 것으로 권고한다. 그렇지 않다면? 운영비용 통지서를 마주한다 카더라.

 

끝!

관련글 더보기