Host 'IP' is not allowed to connect to this MySQL server

- Mysql 은 기본적으로 Local에서만 접속이 가능하도록 되어있다 때문에 별도의 설정을 해주어야  원격 접속이 가능하다

 

 

1. root의 접속권한 확인

- root 계정으로는 local에서만 접근 가능함을 알 수 있다

mysql > SELECT Host,User,authentication_string FROM mysql.user;

 

 

2. 원격접속 허용

1) 모든 IP 허용

mysql > GRANT ALL PRIVILEGES ON *.* TO root@'%' identified by '패스워드';
mysql > FLUSH PRIVILEGES;

 

2) IP 대역 허용

- 다음과 같이 설정하면 10.0로 시작하는 모든 IP가 허용된다.

mysql > GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.0.%' identified by '패스워드';
mysql > FLUSH PRIVILEGES;

 

3) 특정 IP 1개 허용

- 다음과 같이 설정하면 10.0.0.1의 IP만 원격접속을 허용한다

mysql > GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.0.0.1' identified by '패스워드';
mysql > FLUSH PRIVILEGES;

 

 

3. 원격접속 허용전으로 되돌리기

DELETE FROM mysql.user WHERE Host='%' AND User='root'; FLUSH PRIVILEGES;

 

 

4. 원격접속 하기

# mysql -h '원격서버의ip 또는 도메인' -u '원격접속이 허용된 사용자이름' -p 

 

 

 

 

 



출처: https://galid1.tistory.com/349 [배움이 즐거운 개발자]

+ Recent posts