
AWS의 RDS로 구축한 MaraiDB의 문자 인코딩, 방화벽 설정, 접속까지의 과정을 정리해봤다.
개발 환경
MySQL 5.7
MariaDB 10.5.20

utf8mb4 으로 설정
흔히 사용하는 utf8은 이모티콘 지원이 불가능해 utf8mb4으로 설정한다. (MySQL, MariaDB 에만 해당)
utf8mb4_general_ci 으로 설정
collation은 데이터 정렬 및 비교를 위한 규칙 집합을 의미한다.
정확한 한글(또는 동아시아 언어, 일본어, 중국어) 검색 처리를 위해 설정한다.
MySQL
8.0.1버전부터utf8mb4또는utf8mb4_0900_ai_ci가 기본 값이므로 자신이 사용하는 데이터베이스 버전에 맞춰 한글 데이터를 사용할 때에는 변경하는 것이 좋다.
EC2 > Network & Security > Security Groups > Create security group

SSH와 MySQL Workbench 둘 다 접속할 수 있도록 규칙을 설정해줬다.

Modify > Connectivity > Security group


Databases 선택 > Configuration > Master username

(당연히 root 일 거라고 생각하고 시도했다가 계속 로그인 실패해서 찾아보니 마스터 이름이 admin이었음)
mysql -h 엔드포인트 -u 사용자 명 -p
-h : 엔드포인트
-u : 사용자 명
-p : 사용자 비밀번호

ssh 명령어를 입력하면 Enter password 가 나오며 비밀번호 입력을 요청한다.
만약 틀린 비밀번호를 입력했다면 아래와 같은 에러가 뜰 것이다.
마지막에 using password: YES 는 비밀번호를 입력했으나 접속 실패했다는 뜻이다.
ERROR 1045 (28000): Access denied for user 'admin'@'localhost' (using password: YES)
맞는 비밀번호를 입력했지만 접속이 되지 않는다면 mysql -h 엔드포인트 -u 사용자 명 -p 에 옵션을 잘 입력했는지 주의 깊게 확인하자 -h 빼 먹은 거 못 알아채고 진짜 삽질했다..
RDS 데이터베이스 비밀번호 변경 방법
만약 비밀번호가 기억나지 않는다면, 새 비밀번호로 다시 설정하면 된다. 아래의 Master password 칸에 새 비밀번호를 입력하고 수정

Connection Name : 연결하는 데이터베이스 이름 (자유롭게 설정)
Hostname : 엔드포인트
Port : 포트 번호
Username : 사용자 명