본문 바로가기

프로그래밍 언어

[MySQL] 외부에서 접속 시 "Your connection attempt failed for user" 에러

※ 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.




 

!!! 체크 세 가지 !!!

 

1. Mysql 정상 기동 상태

  (로컬에서 정상적으로 접속 확인 : > mysql -u 'user_A')

 

2. Mysql 외부에서 접속 가능한 계정 존재

   - '사용자명'@'호스트'에서 '호스트'가 127.0.0.1이 아닌 '특정 아이피'이거나 '%'가 있는 경우

   - SELECT host, user FROM mysql.user; 입력 시 접속하고 자 하는 user의 host가 localhost외 host가 존재 해야함

user_A 아이디로 특정 host에서 접속
user_A 아이디로 모든 호스트에서 접속

 

3. 3306 방화벽 ALLOW 상태

 


 

위 세가지 모두 정상이지만 외부에서 접근이 불가능할 경우

 

1. 설정 파일

sudo vi /etc/mysql/my.cnf

 

2. 설정

[mysqld]
bind-address = 0.0.0.0

 

3. MySQL 서버 재시작

sudo systemctl restart mysql

 

 

※ 추가 (netstat -an | grep 3306 확인)

 

 - 외부에서 접속 불가능 (로컬만 접속 가능)

- 외부에서 접속 가능