나는 최근에 Homebrew로 업데이트 된 MySQL 5.7을 사용하는 OSX Yosemite 에서이 오류에 대해 내 머리를 두드리고 있습니다. StackOverflow 및 다른 곳에서 제안한 내용에 따라 my.cnf
지정된 파일을 모두 추적했습니다 bind-address=0.0.0.0
. 난 제거하고 지침에 따라 MySQL을 다시 설치 한 후 사용하여 다시 설치 brew install mysql
. 여전히 원격 연결이 허용되지 않습니다.
내가 달릴 때까지 아니었다 ps -ax | grep mysql
(따라서 어떤 무시하고 바인드 주소가 발사 명령에 전달되는 것을 발견 my.cnf
좀 더 파고 발견하는 것이 파일) 브루 기본적으로 127.0.0.1에 MySQL의 결합 것을 .
편집 ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
하여 내 문제 --bind-address=127.0.0.1
를 --bind-address=0.0.0.0
해결했습니다 (후자는 개발 시스템이 아닌 경우 특정 IP 주소로 변경해야 함).
나는 이것이 내가 상담 한 대부분의 리소스가 부족한 중요한 정보라고 생각하므로 여기에 게시하면 다른 사람을 도울 것입니다!
편집 : 로 LeandroCR가 실행 코멘트에 표시된 brew services restart mysql
다시 MySQL의 신비 거부 연결로 이어지는 기본 하나 LaunchAgents에서 PLIST 파일을 덮어 쓰게됩니다. 내가 처음 쓴 것보다 더 나은 조언은 다음과 같습니다.
- 편집
/usr/local/Cellar/mysql/<yourversion>/homebrew.mxcl.mysql.plist
및 교체 --bind-address=127.0.0.1
와 함께 bind-address=*
또는 --bind-address=0.0.0.0
( 바인드 주소에 MySQL의 설명서를 참조하십시오 )
- 다음을 사용하여 mysql을 다시 시작하십시오.
brew services restart mysql
그런 다음 MySQL은 로컬이 아닌 연결을 계속해서 다시 설치해야 할 때까지 계속 받아 들여야합니다.
편집 (2019 년 9 월)
Timothy Zorn 은 Homebrew를 통해 설치 및 실행되는 MySQL 8.x에서 더 이상이 문제가 발생하지 않으므로 2016 년에 작성된 위의 대답은 5.x에만 관련 될 수 있다고 지적합니다.
ssh
하나의 탭에서 열려 있을 때 데이터베이스에 연결할 수 있지만 그렇지 않으면 그렇지 않습니다. 문제는 원격 서버에 로그인하지 않은 상태에서 데이터베이스 서버 프로세스가 일시 중지되었거나 실행되고 있지 않다는 것입니다.