Study/AWS

[AWS][RDS] RDS MariaDB 프리티어 인스턴스 생성 및 DBeaver 연결

토기발 2023. 7. 22. 21:44

EC2에 DB를 설치하고 모니터링, 알람, 백업 등등을 직접 하는 것은 너무 어렵고 번거롭기 때문에 AWS에서 지원하는 RDS를 사용해서 EC2에 연결하기로 했다.

 

 

RDS생성

 

서비스-데이터베이스-RDS를 선택한다.

 

데이터베이스 생성을 클릭한다.

 

 

MariaDB를 사용할 것이기에 MariaDB를 선택해준다.

 

 

 

설정에서 정보들을 기입한다. 마스터 사용자 이름은 MariaDB에서는 root라서 root로 적어주었다. 

 

 

 

중요!!

인스턴스 클래스가 기본은 t3으로 되어있는데 t2로 바꾸어야 과금이 되지 않는다고 한다.

 

 

스토리지 자동 조정 활성화의 경우도 과금이 발생할 수 있어 체크해제해준다.

 

 

EC2 컴퓨팅 리소스에 연결 안 함

퍼블릭 액세스->예 체크

 

추가구성-데이터베이스 옵션에서 초기 데이터베이스 이름을 입력한다.

 

 

과금이 발생할 수 있으니 자동백업 활성화도 체크해제한다.

 

이 외에는 기본설정으로 두고 데이터베이스 생성을 클릭한다.

 

 

데이터베이스 생성중...기다리자.

 

 

생성 완

 

 

파라미터 설정

 

 

RDS를 생성했다면 몇가지 설정을 필수로 해야한다.

 

  • time_zone : 시간 설정
  • Character Set : 문자 인코딩 설정
  • collation : 데이터의 정렬기준을 위한 설정

 

 

왼쪽 메뉴에서 파라미터 그룹을 선택한다.

클릭

 

 

파라미터 그룹을 생성한다.

그룹 패밀리는 아까 만들었던 버전과 동일하게 설정해야 한다.

완료하면 생성 클릭.

 

 

잘 만들어졌다면 이름 클릭 후 좌상단 편집 클릭.

 

time_zone을 검색하면 위와 같이 뜨는데 Asia/Seoul 을 선택하고 Save Change를 클릭하고 그룹 화면에서 검색해보면

 

 

잘 변경되어있다.

 

 

Character Set은 utf8을 utf8mb4로 변경하는 과정으로, 둘의 차이는 이모지 저장 가능 여부이다.

 

utf8mb4
• character_set_client
• character_set_connection
• character_set_database
• character_set_filesystem
• character_set_results
• character_set_server

utf8mb4_general_ci
• collation_connection
• collation_server

 

이렇게 검색해서 위와 같이 변경해주면 된다.

 

수정사항을 적용하기 위해 왼쪽 메뉴의 데이터베이스를 클릭한 후, 처음 생성한 인스턴스의 라디오버튼을 클릭 후 수정을 클릭한다.

 

 

 

쭉 내려오면 DB파라미터 그룹이 있는데 아까 만든 것을 선택한다.

 

 

맨아래의 계속 버튼 클릭 후 수정 예약에서 즉시 적용을 선택하고 DB인스턴스 수정을 클릭한다.

 

성공~~

 

RDS MariaDB 접속하기

 

내가 만들었던 인스턴스 식별자를 클릭하면 연결&보안에 엔드포인트 및 포트라고 적힌 곳이 있다.

연결을 위해 이곳의 정보가 필요하기 때문에 기억해둔다.

 

나는 dbeaver를 사용하기 때문에 이것과 연결하기로 했다.

귀여움

 

보안 -> VPC 보안 그룹 -> 보안 그룹 ID -> 인바운드 규칙 편집 클릭

 

인바운드 규칙 편집 클릭-> 규칙 추가 클릭

 

 

 

이렇게 설정해준 후 규칙을 저장한다.

 

 

이제 dbeaver로 간다.

 

새로운 커넥션을 MariaDB로 생성

 

 

Server Host는 엔드포인트로 지정하고 Database는 db명, Username은 마스터 사용자 이름, Password는 비번을 입력한다.

 

 

 

연결 끝! ^^ 

 

 

+

파라미터 설정이 잘 되었는지 확인하고 싶다면

SHOW variables LIKE "c%";

위 쿼리를 입력한다.

 

character_set_database, collation_connection 2가지 항목은 MariaDB에서만 RDS 파라미터 그룹으로는 변경이 되지 않는다.

그래서 직접 아래 쿼리를 쳐서 변경해주어야만 한다.

ALTER DATABASE DB명
CHARACTER SET = 'utf8mb4'
COLLATE = 'utf8mb4_general_ci';

 

그리고 다시 확인해보면.... 변경되는 경우도 있지만 나는 변경이 안됐다..^^

검색해본 결과 인스턴스 재부팅을 하면 된다는 글을 봐서 얼른 시도해보았다.

 

인스턴스 재부팅은 

 

데이터베이스에 내가 생성한 인스턴스 라디오버튼 클릭-> 작업-> 재부팅을 클릭하면 된다.

재부팅은 조금 시간이 걸려서 상태가 사용 가능이 되면 다시 확인해보자.

 

 

굿 : ) 

 

 

 

[참고출처]

 

스프링 부트와 AWS로 혼자 구현하는 웹 서비스(책)

https://aws.amazon.com/ko/getting-started/hands-on/create-mariadb-db/

https://velog.io/@shawnhansh/AWS-RDS-DBeaver%EC%97%90-%EC%97%B0%EA%B2%B0%ED%95%98%EA%B8%B0

https://velog.io/@yeoonnii/AWS-RDS-MariaDB-%ED%94%84%EB%A6%AC%ED%8B%B0%EC%96%B4-%EC%83%9D%EC%84%B1#1-3-db-%EC%9D%B8%EC%8A%A4%ED%84%B4%EC%8A%A4-%EC%84%A4%EC%A0%95