상세 컨텐츠

본문 제목

[sql] 외부에서 접속 불가능 allowed to connect to this mysql server

mysql

by 2hansoul 2022. 10. 20. 20:49

본문

반응형

 

DB를 외부에서 접속시 발생하는 오류 Heidisql 같은 프로그램 으로 접속시 뜬다

그렇기 때문에 계정 생성후 접속시 허용 할 ip를 지정해줘야한다

 

DB접속 후 현재 설정 확인 root계정으로 로그인 후 확인

select Host,User,plugin,authentication_string FROM mysql.user;

모든 ip 허용

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '패스워드';

혼자 테스트 환경이면 모든 ip허용 해도 상관없는데 왠만하면 안하는게 좋다

 

IP 대역대 허용

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.10.0.%' IDENTIFIED BY '패스워드';

해당 ip 대역대만 허용하게 설정한다 회사에서 여러 사람이 접속시 유용하게 사용 할수 있다 

모든 ip를 허용하기는 위험 부담이 너무 크다

 

특정 IP 허용

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.10.0.254' IDENTIFIED BY '패스워드';

하나의 ip를 지정하여 설정 한다 개발 인력이 많지 않다면 한명씩 지정해서 사용해도 유용하다

 

Ip허용 후 원래 상태로 되돌리기

DELETE FROM mysql.user WHERE Host='%' AND User='아이디';

해당 기능은 개발인력이 아닌 외부에서 보고 싶다고 할때 IP를 허용 해주고 원래 상태로 되돌리기 위해 사용 한다 

외부에서는 한번만 확인하면 되니 IP를 계속 허용 해 줄 필요가 없다

 

설정 적용

FLUSH PRIVILEGES;

현재 사용중인 MySQL의 캐시를 지우고 새로운 설정을 적용하기 위해 사용합니다. 이 명령어를 사용하려는 사용자는 reload권한을 가지고 있어야 합니다. IP를 허용하고 꼭 해당 명령어를 적용하자(이거 안해서 다른방법 계속 해봄)

반응형

관련글 더보기

댓글 영역