위 사진처럼 mysql(mariadb)포트로 접속했을때 Can’t connect to MySQL server on ‘192.168.x.x'(10061) 오류가 발생했을때 해결방법이다.
먼저 mysql을 설치한 서버로 들어가서 netstat -lntp로 열려있는 포트를 확인해보자.
아래처럼 ::::3306이 아닌 127.0.0.1:3306이라고 되어있다면 mysql 설정값 에서 로컬호스트만 mysql 서버로 접속할 수 있도록 되어있다는 뜻이다.
말 그대로 설정값만 변경해 준다면 접속 할 수 있다는 뜻이다.
대부분의 mysql 설정값은 vi /etc/mysql/my.cnf에 있다.
*하지만 아래처럼 includedir /etc/mysql/mariadb.conf.d/ 이렇게 그 하위경로에 있을 수도있으니 참고..
이제 위경로의 파일들을 확인해 보면 /etc/mysql/mariadb.conf.d/50-server.cnf 파일이 있는것을 확인할 수 있는데
vi /etc/mysql/mariadb.conf.d/50-server.cnf 로 접속해서 보자.
bind-address = 127.0.0.1 이라고 나와있는데 로컬 호스트만 허용한다는 뜻이므로 이걸 *로 변경해주자.
주석처리하면 mysql: unknown variable ‘bind-address=0.0.0.0’ 에러나올수도.. 버전마다 다르다.
주석처리가 되었으면 service mysql restart로 재시작
다시 netstat -lntp로 확인해보면 ::::3306으로 바뀌어있는걸 확인할 수 있고
외부에서 접근했을때에도 문제가 없는걸 확인할 수 있다.
bind-address가 어딨는지 설정 파일을 못 찾아서 헤맸는데 저기였군요!! 고맙습니다
잘되신다면 다행입니다~