welcome to haddoddo place🤩

IT & Development & Daily Log

#Hi

개발/DB

[MySQL] 외부에서 로컬DB 원격 접속방법

haddoddo 2022. 1. 26. 02:02
반응형

 

 

업무에서 사용한 기술을 개인적으로 정리를 하기 위해 비슷한 구조로 토이프로젝트를 진행을 하고 있다.
SpringBoot를 사용한 BackEnd와 Node.js + Vue를 사용한 FrontEnd로 프로젝트를 구성하였다.
프로젝트 구성관련 포스팅은 어느정도 환경을 구성후 조금씩 포스팅할 예정이다.
서버를 따로 준비하지 않아서 로컬 DB로 MySQL을 사용하는 도중 외부에서도 로컬 DB에 접속해야 하는 일이 생겼다.
외부 네트워크에서 자택 공유기 DDNS 설정을 통해 접속하여 DB원격 접속을 하는 방식으로 진행하겠다.

 

DataBase : MySQL
Tool           : MySQLWorkbench & DataGrip
Server. : Window
Client   : Mac

 

 

MySQL의 경우 기본으로 설치를 완료하면 root계정이 생성되는데 root계정의 경우엔 localhost, 즉 로컬 환경에서만 접속이 가능합니다.

root계정을 외부에서 접속할 수 있도록 설정할 수 있지만 이번 포스팅에선 외부에서 로컬 DB를 접속하기 위해 외부 접속용 사용자를 추가하도록 하겠습니다.

 

MySQLWrokbench를 사용하여 사용자를 등록하도록 하겠습니다.

 

우측 "Users and Privileges" -> "Add Account"을 클릭하여 사용자를 추가해줍니다.

추가 시 주의할 점은 Limit to Hosts matching란에는 %를 넣어주셔야 외부에서 접속이 가능합니다.

 

사용자 등록을 완료하였다면 상단 탭에서 "Schema Privileges"를 클릭하여 권한을 부여할 스키마와 허용범위를 지정합니다.

 

저 같은 경우 특정 사용자가 특정 스키마만 접근이 가능하도록 설정하였는데 스키마를 생성하는 방법은 아래 링크를 참고해주세요.

▶︎MySQL Workbench 사용법 - 스키마 생성, 테이블 생성, CRUD(select, insert, delete, update)

 

다음으로 외부에서 로컬 DB를 접속하는 것이기 때문에 먼저 로컬 PC와 연결되어있는 공유기의 DDNS 설정이 필요합니다.

공유기 DDNS 설정은 아래 링크를 참고해주세요.

▶︎ipTIME공유기 DDNS 설정 방법 간단 정리

 


DDNS 설정을 완료하였다면 포트 포워딩을 해줘야 합니다.

 

 

MySQL의 포트는 3306으로 외부 포트와 내부 포트를 설정해주시면 됩니다.

여기까지 이제 로컬 DB에 접속하기 위한 준비는 끝났습니다.

 

이제 Client인 Mac에서 원격 접속을 해보겠습니다. 먼저 터미널을 사용해 MySQL에 원격 접속이 가능한지 테스트해보겠습니다.

터미널에 접속 후 "mysql -h ?????.iptime.org -u 사용자명 -p" 명령어를 실행해주세요.

 

명령어 실행 후 password는 위에 단계의 사용자 등록 시 등록한 패스워드를 입력하면 되겠으며, 접속 확인 후

"show databases;" 명령어를 실행하면 권한이 부여된 Database까지 확인을 할 수 있습니다.

접속까지 확인이 되었다면 Client에서 사용하는 DBTool에서도 접속이 가능한 것이니 등록한 정보로 동일하게 접속하시면 되겠습니다.

 

 

구독하기👍 눌러주시고 자주 놀러와 주세요.

공감 ,댓글⌨은 저에게 큰 힘이 됩니다.

감사합니다.🤗

.

.

.

🙏잘못된 정보의 피드백은 댓글 남겨주세요.🙏

 

반응형