서버 & 네트워크

MySQL 외부에서 접속하기

자바지기 2021. 9. 17. 20:13
반응형
 

AWS 서버 구축

Local 서버 구축 / Windows +Apache + PHP + MySQL (Bitnami) 데스크톱에 Local 서버를 구축해보기 1. Bitnami wamp 8.0.10 버전 다운로드 Bitnami wamp를 데스크톱에 설치하면 자동적으로 Apache + PHP + MySQL가..

park-algorithm.tistory.com

AWS 서버 구축에 이어서 AWS EC2 MySQL 서버에 외부 접속하기

외부 접속을 위한 툴로는 DataGrip을 사용한다.


1. MySQL 사용자 생성하기

sudo mysql -u root -p
mysql> create user 'seongwoo'@'%' identified by 'password';

사용자를 생성할 때 다음과 같이 설정한다.

'seongwoo'@'%' : 모든 ip주소에서 seongwoo 사용자로 접근 가능

'seongwoo'@'localhost' : 내부에서만  seongwoo 사용자로 접근 가능

'seongwoo'@'x.x.x.x' : 지정 ip 주소에서만 seongwoo 사용자로 접근 가능

 

password에는 원하는 비밀번호를 적어준다.


2. 사용자 생성 확인하기

mysql> use mysql;                   
mysql> select user, host from user;

사용자 생성 확인


3. 데이터베이스 생성

mysql> create database seongwoodb

seongwoodb 생성 확인


4. 데이터베이스 권한 부여

mysql> grant all privileges on seongwoodb.* to 'seongwoo'@'%';

위의 코드로 seongwoo 계정에 seongwoodb 데이터베이스의 모든 테이블(seongwoodb.*)에 모든 권한(all)을 부여하였다.

권한 부여 확인


5. MySQL 외부 접속 설정

 /etc/mysql/mysql.conf.d/mysqld.cnf (MySQL 설정 파일)을 수정해야 한다.

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

초기에 bind-address가 127.0.0.1로 설정되어있다.

이것을 0.0.0.0으로 바꾼다. (주석으로 처리해도 된다.)

sudo service mysql restart

재시작을 통해 변경사항을 적용한다.


6.  인스턴스 인바운드 규칙 설정

MySQL 규칙을 추가해준다. ( 3306 포트를 열어준다 ) 


7. DataGrip 사용하기

DataGrip에서 데이터베이스를 생성한다.

  • Name: 원하는 이름
  • Host: EC2 인스턴스의 공인 IP주소
  • User & Password : 위에서 만든 MySQL의 사용자와 비밀번호

입력 후 Test Connection을 진행한다.

Test Connection 진행 성공


8. DataGrip 작동 확인 

 

show databases;

위의 코드를 입력하여 확인한 결과 외부 접속이 잘 되는 것을 확인했다.

반응형