[스프링부트] 7. AWS RDS

Bummy·2022년 9월 22일
0

springboot

목록 보기
15/15

이번에는 AWS에서 제공하는 RDS를 활용하여 데이터베이스 환경을 구축해 볼 것이다.


1. RDS 인스턴스 생성하기

AWS 홈페이지에서 RDS 인스턴스를 생성해준다.
AWS는 자칫하면 비용이 발생하기에 내가 잘못된 정보를 전달하는 것보다 책을 통해 RDS 인스턴스를 생성하는 것이 좋을 것 같다.

책에서 나온 내용처럼 RDS 인스턴스를 생성해주고

  • 타임존
  • Character Set
  • Max Connection
    등과 같은 필수 설정들도 진행해준다.

여기서 Character Set은 utf8mb4, utf8mb4_general_ci로 변경해주는데 uft8과 utf8mb4의 차이점은 이모지 저장 가능 여부이다.

2. RDS 접속해보기

데이터베이스 보안 그룹에엇 VPC 보안 그룹을 눌러서 그룹 ID를 복사해준다. 복사된 보안 그룹 id와 내 ip를 RDS 보안 그룹의 인바운드에 추가해주고 이제 인텔리제이로 넘어오면 된다.


인텔리제이에서 해당 database 플러그인을 설치해준다.
이후에 action을 통해 database 플러그인을 실행해주고 앞에서 설정했던 데이터베이스 접속 정보를 등록해준다.

이렇게 접속이 완료 되었다면 콘솔창을 실행시켜주고

use bummy_springboot_webservice;

다음과 같은 쿼리문을 실행해본다.

이렇게 successfully라는 메시지가 나온다면 정상적으로 수행된 것을 확인할 수 있다.

이후에 다음 명령어를 입력해보면

show variables like 'c%';

현재의 character_set, collation 설정을 볼 수 있는데 기존에 설정했던 설정값으로 되어 있는게 아니라서 직접 변경을 해주었다.

ALTER DATABASE 테이블명
CHARCTER SET = 'utf8mb4'
COLLATE = 'utf8mb4_general_ci';

다음 명령어로 직접 변경해주면된다.

타임존까지 아래 쿼리로 확인해보면

select @@time_zone, now();

이렇게 현재 시간이 출력되는 것을 확인할 수 있다.

마지막으로 한글명이 잘 들어가는지 간단한 테이블을 만들어서 데이터를 insert 해보면

CREATE TABLE test (
    id bigint(20) NOT NULL AUTO_INCREMENT,
    content varchar(255) DEFAULT NULL,
    PRIMARY KEY (id)
) ENGINE = InnoDB;

insert into test (content) values ('테스트');

이렇게 한글명도 잘 들어가는 것을 확인할 수 있다.


3. EC2에서 RDS 접근 확인

맥과 윈도우 두가지 방법이 있지만 나는 맥을 사용하고 있기에 터미널에서 진행을 해주었다.

ssh 접속을 실행해주고

sudo yum install mysql

해당 명령어를 입력해서 mysql을 설치해준다.
설치가 다 되면

mysql -u 계정 -p -h Host 주소

해당 명령어를 입력해서 EC2에서 RDS로 접속을 시켜준다.

접속이 정상적으로 완료되면 해당 메시지가 나오는 것을 확인할 수 있다.

이후에 정상적인 RDS에 접근했는지 명령어를 통해 확인해보면

show database;


이렇게 정상적으로 출력되는 것을 확인할 수 있다.

0개의 댓글