MySQL 외부접속 가능하게 하기

아래와 같은 환경에서 진행됩니다.


- OS : Windows 10

- MySQL : mysql-installer-community-5.7.21.0.msi (인스톨 버젼)


MySQL은 OS와 설치방법(zip, msi 등)에 따라서 방법이 상이합니다.

위 환경에서의 방법을 찾느라 어느정도 진땀을 뺐었는데, 이에 정리하여 둡니다.


1. 사용자 계정이 외부의 IP에서 접속이 가능하도록 해주는 단계 (root 계정을 예로 듭니다.)


이 부분은 OS나 MySQL버젼과 관계없이 공통적입니다.

설정을 할 때, 특정 IP나 특정 IP대역만 허용을 하거나, 전체를 허용되게 하는 방법이 있습니다.


1) 특정 IP 접근 허용 설정
mysql> grant all privileges on *.* to ‘root’@‘192.168.56.101’ identified by ‘root의 패스워드’;

2) 특정 IP 대역 접근 허용 설정
mysql> grant all privileges on *.* to ‘root’@‘192.168.%’ identified by ‘root의 패스워드’;

3) 모든 IP의 접근 허용 설정
mysql> grant all privileges on *.* to ‘root’@‘%’ identified by ‘root의 패스워드’


등록이 끝났으면, 계정에 설정한 IP혹은 %가 등록 되어있는지 확인을합니다.

mysql> select host, user, password from user;

mysql> flush privileges;



2. 방화벽 열어주는 단계


이 부분이 Windows 10에서 인스톨 버젼(msi)으로 설치 했을때 적용되는 부분입니다.


1) 제어판의 Windows Defender 방화벽을 찾아서 들어갑니다. (윈도우 검색에서 '방화벽'이라고 검색해도 됩니다.) 그후 고급 설정을 클릭합니다.



2) 창이 뜨면 '인바운드 규칙'을 누르고 다음으로 '새 규칙'을 누릅니다.



3) '프로그램' 선택된 것을 확인한 후에 '다음'버튼을 누릅니다.



4) '찾아보기'버튼을 눌러 MySQL이 설치된 폴더를 찾아서 mysqld.exe를 선택하여 줍니다.
저의 경우에는 "C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe" 에 있습니다.



5) '연결 허용'이 선택된 것을 확인하고 '다음'버튼을 누릅니다.



6) 그림과 같이 모두 체크를 한 후에 '다음'버튼을 누릅니다.



7) 마지막으로 규칙에 대한 이름을 적당히 적은 후에 '마침'버튼을 눌러 모든 단계를 마무리합니다.


 


이렇게 하여 모든 단계가 마무리 되었습니다.

외부에서 내 윈도우 서버(PC)에 있는 MySQL에 접속할 수 있습니다.

이 글을 공유하기

댓글(4)

  • 2018.11.02 04:08

    비밀댓글입니다

    • 2018.11.06 18:53 신고

      댓글을 늦게 봤네요.
      1. 위글의 설정대로 따라 가시면 외부에서 접근이 가능합니다.

      2. 같은 네트워크에 있다면, 192.168.0.1 같은 내부 아이피가 있으니 그 ip로 접속하시면 될거에요.

  • ryan
    2018.11.02 14:08

    이렇게 하면 어떻게 외부에서 윈도우 pc에 있는 mysql 접속이 가능한지 궁금합니다.
    제가 필요한 상황은, 라즈베리파이에서 사진을 찍어서 윈도우 pc에 있는 mysql로 파일을 전송 및 저장 하고 싶습니다.
    그래서 위 과정이 필요할 듯 싶은데요. 접속은 어떻게하는지 궁금합니다.
    그리고 혹시 가능하면 mysql로 전송 및 저장방법도 같이 알 수 있을까요?

  • 2018.11.06 18:57 신고

    mysql로 전송, 저장 방법 이라는 질문이 광범위하네요..
    binary를 저장하는 방법이 궁금하신건지??, 쿼리 문장이 궁금하신건지..
    라즈베리파이에서 어떤 프로그램으로 접속을 하시는 건지..등등의 내용이 없어서

Designed by JB FACTORY