AWS에서는 관리형 서비스인 RDS(Relational Database Service)를 제공합니다. RDS는 AWS에서 지원하는 클라우드 기반 관계형 데이터베이스 이다. 하드웨어 프로비저닝, 데이터베이스 설정, 패치 및 백업과 같이 잦은 웅영 작업을 자동화하여 개발자가 개발에 집중할 수 있게 지원하는 서비스이다.
RDS 인스턴스 생성하기
- RDS 검색
- 대시보드 -> 데이터베이스 생성
- MariaDB 선택
- 가격
- Amazon Aurora(오로라) 교체 용이성
- Amazon Aurora는 AWS에서 MySQL과 PostgreSQL을 클라우드 기반에 맞게 재구성한 데이터베이스
- MariaDB와 MySQL 차이점(MariaDB 기준)
- 동일 하드웨어 사양으로 MySQL보다 향상된 성능
- 좀 더 활성화된 커뮤니티
- 다양한 기능
- 다양한 스토리지 엔진
- MYSQL에서 MariaDB로 마이크레이션 해야 할 10가지 이유로 구글에 검색해보자
RDS 운영환경에 맞는 파라미터 설정하기
- 타임존
- Character Set
- Max Connection
- Seul,Asia 가 아닌 Aisa/Seoul 로 입력 ( 아래에 있는 값 입력하면 Invalid Value 뜸!)
- Character_set 항목은 utf8mb4
- collation_connection 은 utf8mb4_general_ci
- utf8과 utf8mb4의 차이는 이모지 저장 가능 여부
- 기존 프리티어 사양은 60 개정도 지원
- 넉넉하게 150개로 변경
- 이후 RDS 사양을 높이게 된다면 기본값으로 다시 돌려놓으면 됨
변경사항 결과
파라미터 그룹을 데이터베이스에 연결
내 PC에서 RDS에 접속해 보기
- RDS의 보안 그룹에 본인 PC의 IP 추가
- 내 IP와 인스턴스만들때 만든 보안그룹을 추가
- 여기 사이트 참고
Database 플러그인 설치
- MySQL - Workbench, SQlyog(유료), Sequel Pro(맥 전용), DataGrip(유료) .. 대표적인 GUI 클라이언트
- 무료 버전인 경우 Database Navigator Plugin을 다운받아 사용하자(사용법은 검색 해보시길!)
- Ultimate 버전은 우측 상단에 Database 탭 클릭후 + MariaDB 추가
- DB 설정
use yoon_springboot2_webservice;
show variables like 'c%';
ALTER DATABASE yoon_springboot2_webservice
CHARACTER SET ='utf8mb4'
COLLATE = 'utf8mb4_general_ci';
select @@time_zone, now();
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 ('테스트');
select * from test;
- 몇몇 character_set & collation 이 latin_1 로 되있어서 Alter를 통해 utf8mb4 로 변경
- insert 는 한글이 잘들어가는지 테스트
EC2에서 RDS에서 접근 확인
- Mac에선 ssh
- 윈도우에선 putty
- MySQL CLI 설치
sudo yum install mysql
- mysql -u 계정 -p -h Host주소 입력
- 데이터가 아주 잘들어가있는걸 확인 할 수 있다~
- reference
스프링부트와 AWS로 혼자 구현하는 웹서비스
'Web > AWS' 카테고리의 다른 글
AWS Docker 설정 (0) | 2022.06.26 |
---|---|
EC2 서버에 프로젝트 배포하기 (0) | 2021.08.23 |
AWS 서버환경 (0) | 2021.08.22 |