MySQL 원격 접속 허용
MySQL을 설치를 진행하게 되면 기본적으로는 로컬에서만 접속이 가능하도록 설치가 됩니다.
이런 설정을 외부에서 DB를 접속 할 수 있게 변경을 해줘야 합니다.
1. MySQL 접속 IP 확인
5.7 이상 버전 : SELECT Host,User,plugin,authentication_string FROM mysql.user;
5.6 이하 버전 : SELECT Host,User,plugin,password FROM mysql.user;
위에 있는 명령어로 확인이 가능합니다.
mysql> SELECT Host,User,plugin,authentication_string FROM mysql.user;
+-----------+---------------+-----------------------+-------------------------------------------+
| Host | User | plugin | authentication_string |
+-----------+---------------+-----------------------+-------------------------------------------+
| localhost | root | mysql_native_password | *97925E5A498F7FDBC94DAC363A9753359A6E14D9 |
| localhost | mysql.session | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| localhost | mysql.sys | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
+-----------+---------------+-----------------------+-------------------------------------------+
출력된 결과를 보면 root인 사용자로 DB를 외부에서 접속시 localhost에만 접속이 가능하게 되어 있어 접속이 불가합니다.
2. 외부 IP 추가
외부 IP접속이 추가하는 방법은 3가지 정도로 나눈다.
2-1. 모든 ip에서 접속시 허용
GRANT ALL PRIVILEGES ON *.* TO '아이디'@'%' IDENTIFIED BY '패스워드';
FLUSH PRIVILEGES;
2-2. 특정 ip대역에 접속시 허용
GRANT ALL PRIVILEGES ON *.* TO '아이디'@'111.222.%' IDENTIFIED BY '패스워드';
FLUSH PRIVILEGES;
2-3. 특정 단일 ip에서 접속시 허용
GRANT ALL PRIVILEGES ON *.* TO '아이디'@'111.222.33.44' IDENTIFIED BY '패스워드';
FLUSH PRIVILEGES;
3. 등록 확인 후 적용
등록이 끝났다고 하면 SELECT Host,User,plugin,authentication_string FROM mysql.user; 명령어로 확인 후 외부에서 다시 접속을 시도해 봅시다.
'데이터베이스 > MySQL' 카테고리의 다른 글
개발노트 :: MySQL 검색 결과 행 번호 매기기(ROWNUM) 및 페이징 (0) | 2019.06.13 |
---|---|
개발노트 :: MySQL 사용자 추가 및 삭제 (0) | 2019.06.03 |
개발노트 :: MySQL 사용자 권한 확인 및 추가 (0) | 2019.05.29 |
개발노트 :: MySQL DB TABLE DATA덤프(dump) 및 복구 (0) | 2019.05.28 |