M1 맥 환경 MySql 설치 문제
Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
homebrew로 mysql을 설치하고 난 뒤, mysql -uroot를 실행하니 다음과 같은에러가 발생했다.
검색을 해보니 brew에서 mysql를 실행하지 않았기 때문이었다. brew services start mysql 명령어를 통해 서버를 실행해줬다. 그런데 아무리 해당 명령어로 서버를 실행해도 실행하자마자 서버가 꺼지는 문제가 발생했다.
mysql stopped mozzi329 ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
검색을 해보니 옛날 솔루션들이 많았다 ㅜㅜ
예를 들어 예전 homebrew mysql 경로는 /usr/local/var/mysql/ 인데, 지금은 /opt/homebrew/var/mysql로 바뀌어있었다. usr/local/var에 왜 아무것도 없나 계속 검색하다, homebrew 경로가 바뀌었다라는 것을 알게 되었다.
거의 일주일 간 삽질한 것 같은데, 다음은 내가 찾아본 오류 해결 방법들이다.
❗️mysql 폴더 권한 문제
chmod -R 777 /opt/homebrew/var/mysql/
mysql 폴더에 권한이 없어서 서버가 실행되지 않을 수 있다고 한다. 그래서 mysql 폴더 권한을 777 권한으로 변경해봤다. 결과는 실패.
❗️mysql 완전 삭제 후 재설치
해당 깃헙 링크의 mysql 경로는 /usr/local/var/mysql/ 이라 최신 경로로 변경해서 폴더를 모두 지워봤다. 그 후 brew install mysql을 통해 재설치 해보았다. 결과는 실패. 역시나 실행하자마자 서버가 바로 다운되었다.
❗️homebrew 재설치
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
해당 명령어로 맥에 설치되어 있는 homebrew를 삭제했다.
삭제 후 아래 명령어로 재설치해보았다.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)
그 후 동일하게 brew install mysql로 mysql을 재설치했다. 근데 실패.
❗️해결
mysql과 homebrew를 수십번 깔았다 지웠다 반복하다 homebrew를 삭제한 후 opt 경로에 들어가봤다.
? 님이 왜 있죠?
알고 보니 homebrew 삭제 명령어로 삭제했는데 homebrew를 완전 삭제하지는 않는 것이었다. homebrew 잔재 파일이 남아있었다. (왜지? ;;) 그래서 rm -rf 명령어로 homebrew를 완전히 삭제해주었다.
다시 homebrew를 설치한 후 mysql 설치. brew services start mysql로 서버를 실행해보았다.
드... 드디어..!!
왜 에러가 발생했을까 생각해보았다. 생각해보니 예전에 homebrew로 mysql을 설치한 적이 있었던 게 기억이 났다. 그때 경로나 뭐가 꼬였던 것 같은데, 결국은 homebrew 자체를 완전히 밀어버리고 다시 설치하니 정상적으로 작동되었다.
❗️시도해보진 않았던 것들
ERROR! The server quit without updating PID file
삽질하면서 다음과 같은 에러도 계속 번갈아가면서 났다.
brew install mysql
sudo mysqld --initialize --user=mozzi329
mysql.server start
좀 더 찾아보니 mysql 사용자를 mac PC 사용자명으로 변경해주는 방법도 있었다. 시도해보려다 고쳐져서 해보진 않았다. 참고 바란다..