IT/MySQL

Windows MySQL 외부 접속 허용

pandada 2022. 6. 10. 11:33
반응형

저번에 Mysql Server 설치를 진행했다.

이제 테이블도 만들고, 데이터도 넣고 하기 위해서.. 외부에서 접속이 필요하다. 언제까지나 서버에 직접 원격 붙어서 접속을 시도할 수 없으니... 이번에는 외부에서 접속을 허용할수 있도록 신규 계정을 만들고 진행해보자.

 

우선 서버에 원격을 접속해서 user list를 확인해보자.

< select * from mysql.user >

현재 사용자가 따로 없이 root 만 있는 부분이다. 원격 접속을 위해서 해당 계정만 접속할 수 있는 데이터베이스도 만들고 

신규 계정을 생성해보자.

추가적으로 root 계정은 host가 localhost로 되어있기 때문에 해당 서버에서만 접속이 가능한 부분을 확인할 수 있다.

 

 

< create user >

계정을 생성했다. 계정생성에 대한 내용은 아래와 같다.

  • create user '계정명'@'호스트' identify by '비밀번호'
  • 특정 호스트에서만 접속 가능하게끔 하려면 특정 IP만
  • 아이피 대역으로 진행을 하려면 192.168.% 처럼 뒤에 %를 사용.

계정을 생성했으니 이제 해당 계정에 대한 데이터베이스 권한을 추가하자.

 

< create database / grant >

신규 데이터베이스를 생성했고, 이후에 접속 권한을 부여했다.

  • create database novacel;
  • grant all privileges on novacel.* to 'novacel'@'192.168.%';
  • grant all privileges on 데이터베이스명.* to '계정명'@'호스트';

해당 내용으로 권한을 추가했고, Mysql 서비스를 재실행해줘야한다.

재실행을 해줘야하는 이유는 권한이 추가, 삭제, 변경이 이루어 질경우에는 재실행이 필수이다.

Window 같은 경우에는 서비스에서 재실행을 진행해주면 되고, 리눅스는 systemctl 명령어를 사용해서 재실행하면 된다.

 

< 서비스 재시작 >

서비스를 재시작하니 외부에서 접속이 가능한 부분을 확인할 수 있었다.

참고로 회사에서 외부 개발자가 접속을 필요로 하는 경우에는 해당 방식으로 권한을 넣어주고 빼면 된다.

 

 

반응형