AWS RDS 구축 과정
1. DB 인스턴스 생성
AWS를 검색해서 RD 서비스 화면으로 접근한다.
지역 설정이 "서울"로 잘 되어있는지 확인한다. 서울이 아니라면 "서울"로 변경해주도록 한다.
[데이터베이스 생성] 버튼을 클릭한다.
나는 MySQL을 사용할 거라서 MySQL을 선택하였고 하단에 버전을 선택할 수 있다. 본인이 사용하는 버전에 맞게 선택하면 된다.
템플릿 선택지가 있는데 나는 공부용이여서 무료로 사용가능한 프리티어를 선택했다.
DB인스턴스식별자에는 원하는 이름을 지정해주고 마스터사용자 이름과 암호를 입력한다. 마스터 사용자 정보로 실제 DB에 접근하게 되므로 반드시 기억해두어야한다.
데이터베이스 생성이 되는 걸 확인할 수 있다.
2. 파라미터 그룹 설정
데이터베이스를 사용하기 전에 RDS 운영환경에 맞는 파라미터를 설정해주어야한다.
이를 위해서 초기 AWS RDS를 셋팅할 때 파라미터 그룹을 생성하여 charcter set과 collation, log_bin_trust_function_creators 설정이 필요하다.
파라미터 그룹을 생성할 때, 앞선 과정에서 8.0.19 버전으로 생성했기 때문에 같은 버전인 mysql8.0으로 선택해야한다.
먼저 char을 검색해서 다음 항목을 utf8mb4로 변경해준다.
collation을 검색해서 다음 항목을 utf8mb4_general_ci로 변경해준다.
utf8과 utf8mb4의 차이는 이모지 저장 가능 여부이다. utf8은 이모지를 저장할 수 없지만, utf8mb4는 이모지 저장이 가능하다.
time_zone을 검색해서 Asia/Seoul로 변경해준다.
max_connections을 검색해서 150으로 지정해준다. RDS의 Max Connection은 인스턴스 사양에 따라 자동으로 정해지는데, 좀 더 넉넉한 150으로 지정해주고 이후에 RDS 사양을 높이게 된다면 기본값으로 다시 돌려놓으면 된다.
log_bin을 검색해서 log_bin_trust_function_creators를 1로 설정해준다.
변경사항을 확인 한 뒤 저장하면 파라미터 설정은 완료된 것이다.
변경된 파라미터 설정을 적용하기 위해서는 데이터베이스 재부팅을 해주어야하므로 재부팅을 반드시 해야한다.
3. 파라미터 그룹과 데이터베이스 연결
[수정] 버튼을 클릭한다.
데이터베이스 옵션 - DB 파라미터 그룹에 위에서 만든 파라미터 그룹을 선택해준다.
즉시 적용을 체크하고 DB 인스턴스 수정 버튼을 통해 설정을 변경하도록 한다.
만약 예약된 다음 유지 시간으로 하면 지금 하지 않고, 새벽 시간대에 수정이 진행되게 된다.
이 수정사항이 반영되는 동안 데이터베이스가 작동하지 않을 수 있으므로 예약 시간을 걸어두라는 의미지만,
지금은 크게 의미있지 않으므로(서비스를 오픈한 것이 아니기 때문) 즉시 적용하는 것이다.
DB 인스턴스 수정이 완료되었다. 간혹 파라미터 그룹이 제대로 반영되지 않을 때가 있는데, 정상 적용을 위해 한 번 더 재부팅을 진행해주도록 한다.
4. RDS 데이터베이스 연결
인텔리제이를 실행하면 우측에 보이는 Database 탭을 눌러보면 아래와 같은 화면이 나오게 되며, +버튼을 눌러서 Data Source - MySQL을 선택해준다.
그리고 방금 생성했던 RDS의 엔드포인트를 확인하여 Host에 입력해준다.
RDS를 생성할 때 입력해주었던 사용자 정보를 각각 User와 Password에 입력해준 뒤,
Test Connection 버튼을 통해 연결이 잘 되는지 확인해본다.
연결이 잘 되는걸 확인했다면 Apply를 눌러서 적용한다.
5. EC2에서 RDS로의 접근 확인
내 PC에서 RDS 접속하기
로컬 PC에서 RDS에 접속하기 위해서 RDS의 보안 그룹에 본인 PC의 IP를 추가해야한다.
1. 로컬 PC의 IP
2. EC2에 사용된 보안 그룹의 그룹ID
RDS의 세부정보 페이지에서 [보안 그룹] 항목을 클릭해서 앞전의 EC2 인스턴스에서 보안 그룹을 설정해줬던 것과 마찬가지로 보안 그룹을 설정해주면 된다.
WinSCP로 해당 EC2에 접근하여 해당 명령어를 입력한 후 사용자 비밀번호를 입력하면 정상적으로 접속이 된 걸 확인할 수 있다.
$ sudo mysql -u admin -p -h RDS 엔드포인트
참고
velog.io/@banjjoknim/AWS-RDS-%EC%A0%81%EC%9A%A9%ED%95%98%EA%B8%B0
'서버세션 > Server' 카테고리의 다른 글
[Error] /usr/bin/env: ‘sh\r’: No such file or directory 해결 (0) | 2021.06.28 |
---|---|
Spring boot 환경구축 (0) | 2021.05.02 |
Ubuntu Nginx에서 서브도메인(Sub Domain) 적용하기, Domain Redirection 적용 (0) | 2021.04.20 |
[HTTPS 적용] Let's Encrypt 를 이용해서 HTTPS 적용하기 (0) | 2021.04.20 |
도메인 구입 후 서버에 도메인 설정하기 (0) | 2021.04.20 |
댓글