EC2 RDS 없이 무료로 MySQL DB연동하기
* RDS : AWS 에서 제공하는 DB 서비스
프리티어라고는 하지만 1년 무료이용, 그 이후에는 요금이 발생하므로 직접 MySQL로 연동해보기로 했다.
1. MySQL 설치 및 설정
MySQL 설치
▶최신상태로 업데이트 후 mysql 설치
sudo apt-get update
sudo apt-get install mysql-server
중간에 설치 하겠냐는 물음이 뜨면 Y 입력 후 엔터 눌러주면 설치 된다.
bind-address 설정
MySQL 설치 시 자동으로 127.0.0.1로 지정되어있는 bind-address를
모든 네트워크에서 오는 요청을 허용해야 하기 때문에 0.0.0.0으로 수정해주어야 한다.
▶ mysql 설치 시 생성된 mysql.conf.d 파일 들어가기
cd /etc/mysql/mysql.conf.d
▶ 리스트 출력
ll
mysqld.cnf 파일을 열어서 수정해주어야 한다.
▶ vi 에디터로 mysqld.cnf 파일 열기
sudo vi mysqld.cnf
수정해주어야 할 곳은 bind-address 부분이다.
** vi 에디터 수정 방법
① 수정할 라인에서 i 키 : vi 에디터에서 입력을 시작하겠다
② 수정사항 입력 : 127.0.0.1을 0.0.0.0 으로 수정해준다
③ ESC 키 : 수정사항 입력 후 입력상태 해제
④ :wq 입력 : 저장하고 vi 에디터 나오기
이렇게 수정해주기
MySQL 접속 및 설정
▶ mysql 쿼리문 입력할 수 있는 상태로 전환
sudo mysql -u root -p
비밀번호는 지정하지 않았으므로 엔터 입력해주면 된다.
▶ 계정 생성하기
CREATE USER '유저명'@'%' IDENTIFIED BY '비밀번호';
▶ 모든 권한 부여하기
GRANT ALL PRIVILEAGES ON *.* TO '유저명'@'%' WITH GRANT OPTION;
▶ 데이터베이스 생성하기
CREATE DATABASE 데이터베이스 이름 default CHARACTER SET UTF8;
▶ 생성된 계정 확인하기
use mysql;
select user, host from user;
위에서 생성한 계정이 같이 떴다.
▶ 적용하기 (커밋하기)
flush privileges;
mysql 입력 상태에서 나오기 위해 Ctrl+D 입력 해주고
▶ MySQL 재시작 후 3306 포트 열어주기
sudo service mysql restart
sudo ufw allow out 3306/tcp
sudo ufw allow in 3306/tcp
sudo service mysql restart
2. 인바운드 규칙 설정
DB 또한 외부에서 접근하기 위해 SQL 포트번호에 대한 인바운드규칙을 설정해주어야 한다.
네트워크 및 보안 ▶ 보안 그룹
인바운드 규칙 ▶ 인바운드 규칙 편집
MYSQL 을 추가해주고 (포트번호 3306 고정)
접근할 수 있는 아이피 0.0.0.0/0 (전체 접근 가능) 입력해주고 규칙 저장
3. DB 연결
새로 만든 MySQL 데이터베이스를 디비버로 연결해보기.
새 연결을 위해 상단 + 버튼 클릭
MySQL 선택 후 다음
Server Host : EC2 서버 IP
Database : 생성한 데이터베이스 이름
Username & Password : 생성한 계정 이름 및 비밀번호
입력 후 확인버튼 클릭
** 계정 연결 시 Public Key Retrieval is not allowed 에러가 난다면
2024.02.07 - [CODING/Tools] - [DBeaver] Public Key Retrieval is not allowed
DB 연결 성공!!!
4. 유의사항
연동은 됐는데 테이블을 못찾길래 보니까
DB 테이블명은 소문자인데 쿼리문은 대문자였다!
쿼리문 테이블명을 소문자로 수정하니 바로 연결 완료
'CODING > ⛅AWS' 카테고리의 다른 글
[AWS] EC2 프리티어 서버 끊김 현상, swap 메모리 설정하기 (0) | 2024.07.30 |
---|---|
[AWS] EC2 인스턴스 Connection timed out (0) | 2024.07.02 |
[AWS] 3. EC2 외부 접속 허용 및 스프링부트 웹 서비스 배포하기 (0) | 2024.02.05 |
[AWS] 2. PuTTY 설치 및 서버 접속하기 (0) | 2024.01.24 |
[AWS] 1. EC2 무료 서버 구축하기 (0) | 2024.01.19 |