MySQL 외부 접속

oyeon·2021년 4월 19일
1

Server

목록 보기
6/16

reference
https://luminitworld.tistory.com/82?category=975147
https://sangm1n.github.io/aws-connet/
https://velog.io/@oyeon/MySQL-%EA%B8%B0%EB%B3%B8-%EC%82%AC%EC%9A%A9%EB%B2%95

환경

클라우드 서버 : AWS EC2 인스턴스
OS : Ubuntu 20.04 LTS
WebServer : Nginx
BL : PHP
DBMS : MySQL

MySQL 외부 접속

새로운 계정 생성

~$ mysql -u root -p
mysql> create user 'spring'@'%' identified by '비밀번호';
mysql> show databases;
mysql> use mysql;
mysql> select user, host from user;

spring 사용자가 생성된 것을 확인할 수 있다.

데이터베이스 권한 부여

mysql> create database springdb
mysql> grant all privileges on springdb.* to 'spring'@'%';
mysql> select user, host from user;
mysql> flush privileges;
mysql> show grants for 'spring'@'%';

spring 사용자가 springdb 데이터베이스에 대한 권한을 부여받은 것을 확인할 수 있다.

MySQL 외부 접속 설정

mysqld.cnf 수정

~$ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
...
bind-address 		= 0.0.0.0
...

bind-address를 0.0.0.0으로 설정해서 외부 접속을 허용

~$ sudo service mysql restart

mysql 재시작하여 변경사항 적용

인바운드 규칙 추가

보안그룹 링크로 들어가 MYSQL 규칙을 추가하였다. 이로써 외부 접속에 대한 설정을 마쳤다.

외부 접속 확인

외부 접속 확인은 MySQL Workbench를 통해 진행했다.

새로운 connection을 추가하여 Hostname에는 인스턴스의 '퍼블릭 IPv4 주소', Username에는 이전에 생성한 Mysql 계정명을 입력하고 Test Connection을 진행한다.

정상적으로 연결된 것을 확인할 수 있다.

profile
Enjoy to study

0개의 댓글