일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 공유DB
- Project
- 코딩테스트
- 취준생
- spring boot
- AWS
- IntelliJ
- 프로젝트
- Java
- 코테
- JPA
- 팀프로젝트
- MVC
- coding test
- gradle
- 백준
- 자취
- 스프링
- spring
- 입출력
- ps
- JDK
- MariaDB
- Controller
- SpringBoot
- React
- jdk11
- 자바
- 디자인패턴
- javascript
- Today
- Total
Tech Collection
[AWS RDS] 데이터베이스 환경 만들기 - 무중단 배포 2 본문
RDS 서비스 페이지로 들어간다.
MariaDB 가 Amazon Aurora와 유사하기때문에, MariaDB로 만든다.
버전 기억해놓기
DB 인스턴스 식별자는 내가 알아볼 수 있는 이름으로 해주면 된다.
마스터 사용자 이름과 마스터 암호는 꼭!!!!! 기억해놔야한다!!!!!!!!!
스토리지 크기 20GB 맞는지 확인하기
이렇게 입력했으면 데이터베이스 생성 누르기!!
이렇게 RDS가 생성되었다!!
운영환경에 맞게 설정해줘야 한다.
- 타임존 : 시간대를 Asia/Soeul 로 변경
- Character Set : 이모지도 같이 쓸 수 있는 utf8mb4 로 변경
- Max Connection : 150개의 커넥션이 가능하도록 변경
파라미터 그룹을 생성한다.
내가 생성했던 RDS 의 MariaDB 버전과 같은지 확인하고
이름, 설명 입력 후 생성한다.
내가 생성한 파라미터의 상세페이지에 들어가서 파라미터 편집을 누른다.
위와 같이 다 바꾼 후 변경 사항 저장을 눌러서 저장한다.
변경한 파라미터를 DB에 적용한다.
계속 눌러서 진행
EC2 페이지에서 인스턴스 상세페이지로 들어가기
인스턴스의 보안 탭에 있는 보안 그룹의 상세페이지로 들어가기
보안그룹 ID 복사한 후 RDS 페이지로 이동
RDS의 데이터베이스 상세페이지에서 보안그룹규칙 탭 > 보안그룹 하나 클릭 > 보안그룹 상세페이지로 이동
규칙 추가를 누른 후
MYSQL/Aurora 타입으로 선택하고,
ec2 인스턴스의 보안그룹 id를 넣은 규칙 한개와 내 ip를 입력한 규칙 한개를 생성한다.
그리고 규칙 저장을 누르면, 이제 인스턴스와 RDS 가 연결되었다.
엔드포인트를 복사해 놓는다.
Workbench 에서 원격 데이터베이스 사용하기
첫 화면에서 MySQL Connections 옆의 추가 버튼을 눌러준다.
해당 항목들을 채워 넣은 후 Test Connection 클릭
연결 성공이 뜨면 연결이 잘 된거다!!
OK 눌러서 저장하고 쓰면 된다.
IntelliJ 에서 database 플러그인으로 원격 데이터베이스 사용하기
ultimate 버전에서만 가능하다.
제일 오른쪽 사이드바를 보면 Database 탭이 있다.
Data Source > MariaDB 선택 후 정보 입력 > Test Connection
이렇게 되면 성공이다!
DB 추가하기 전에 Schema 탭에서 All schema 선택 > OK 누른 후 DB 추가하기
나처럼 Schemas가 4개밖에 없다면 하나 생성해서 거기에 테이블만들고 사용하기
use 스키마이름;
- 사용할 스키마 지정
show variables like 'c%';
- character set, collation 설정 확인
latin1 으로 설정된 부분들만 다시 한번 더 바꿔준다.
여기서 3, 11 라인 말고 다른 부분들도 latin1 이라면 aws rds 페이지에서 데이터베이스 재부팅 후 다시 쿼리문을 실행해보자.
ALTER DATABASE 데이터베이스명
CHARACTER SET = 'utf8mb4'
COLLATE = 'utf8mb4_general_ci';
적용된 사항들을 확인할 수 있다.
select @@time_zone, now();
- 타임존 확인
프로젝트 DB 설정
src > resources > application.properties
아래 내용 입력
# MariaDB 연결 설정
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
spring.datasource.url=jdbc:mariadb://[ec2 엔드포인트]:3306/[사용할 db schema 이름]
spring.datasource.username=[db 마스터 이름]
spring.datasource.password=[db 마스터 비밀번호]
EC2 에서 RDS 접근하기
sudo yum install -y mysql
- MariaDB가 MySQL 기반이라 mysql 설치해서 사용
mysql -u 마스터사용자계정 -p -h 엔드포인트
- DB 접속
데이터베이스 목록을 확인 후 생성했던 POS 스키마가 있음을 확인한다.
'Build > AWS 배포' 카테고리의 다른 글
[Linux] JDK 11 Install (0) | 2021.03.10 |
---|---|
[AWS] 서버에 프로젝트 배포하기 - 무중단 배포 3 (0) | 2021.03.10 |
[AWS EC2] 서버 환경 만들기 - 무중단 배포 1 (0) | 2021.03.10 |
[AWS RDS] 공유DB 설정하기 (0) | 2021.01.21 |
[AWS] 공유 DB 연결 (0) | 2020.12.22 |