mysql 접속시 같은 localhost인데도 접속불가시 확인할 것

By @rc-noah8/22/2018mysql

1. user 권한 확인
2. my.cnf 에서 bind-address 옵션 확인

둘다 확인해봐야한다.
첫번째만 확인해봤다가 2시간날림 히ㅋㅋㅋㅋ힣ㅋㅋㅋㅋ


첫번째는 유저 접속 권한을 여러곳에서 접근 가능하게 주면 된다.

GRANT ALL ON *.* TO 'username'@'%' IDENTIFIED BY 'pw'  


설명하자면

 ALL : 권한설정. 권한의 종류에 대해선 다른곳에서 찾아볼거  

*.* : 권한을 어느 데이터베이스의 어느 테이블에 줄것인가 기재하는 곳.

'username' : id  '%' : 접근가능한 위치를 지정. %는 외부까지 전부. 192.168.0.% 식으로 적으면 내부 ip만 전부. 127.0.0.1 은 mysql이 설치된 서버만 가능. 뭐 이런식. 

'pw' : password

위는 없는 계정 새로 만들어서 그 계정에 준 관리자 권한까지 주고 외부 어디서나 다 접속 가능하게 해주는 명령어고.
사실 이미 계정이 있다면 identified 부턴 안적어도 된다.
나는 내부에서만 돌릴거라 192.168.0.% 로 입력해 넣었다.


두번째론 /etc/mysql/my.cnf 파일을 열어보면(경로는 데비안 계열 기준이다.)
bind-address=127.0.0.1 이란 부분이 있는데
이를 주석처리 하거나 지우거나.
아니면 특정 ip 대역을 넣어도 된다. (그럼 특정 ip대역에서만 접근가능.)

그리고 mysql을 리스타트 하면(service mysql restart)
문제해결.

1

comments