[MySql] Mac Homebrew 설치 MySql 실행 시 에러 해결

기영·2024년 10월 8일
0

본 포스팅은 어느날 갑자기 일어나게 된 MySql 오류로 인해 MySql을 지웠다 깔았다를 수십번 반복하다 결국은 어쩌다 해결이 되어 작성하는 포스팅입니다.

📌 환경
- M1 Macbook Air
- Ventura 13.6.6
- Homebrew를 통한 MySql 설치


MySql이 9.x.x 버전대로 업데이트가 되면서인지 MySql 실행에 있어 계속하여 에러가 발생하였다.

출처 : https://velog.io/@hardcoredev0/mysql-PID-error

다음과 같은 PID file을 찾을 수 없다는 에러가 발생했다.

검색을 통해 나온 방법을 대부분 시도해봤지만 결국 되지않아
"그냥 지우고 다시 깔자"
라는 결론에 도달했다.

MySql 삭제

MySql 삭제를 위해선 다음 단계를 모두 거쳐줘야 한다.

1. 설치된 MySql 확인

$ brew list # 설치된 패키지 확인

2. MySql이 실행 중인지 확인

$ brew services list # 실행 중인 서비스 확인

3. MySql 중지

$ brew services stop mysql

4. MySql 삭제

$ brew uninstall mysql

5. MySql 관련 파일 삭제

$ sudo rm -rf /usr/local/var/mysql
$ sudo rm -rf /usr/local/etc/my.cnf

❗️ 필자는 해당 경로를 확인해보니 해당 디렉토리와 설정 파일이 없었다.
지웠다 설치했다를 반복하다보니 없었던 것일 수도 있다.

다른 분들은 혹시나 모르니, 관련 경로를 다 찾아보며 MySql 관련 파일이나 디렉토리를 다 지우기 바랍니다.

MySql 재설치 - 8.0 버전으로 설치

$ brew install mysql@8.0

재설치 후 command not found : mysql 에러 해결

이렇게 설치가 완료된 후, MySql 버전을 확인해봤다.

아 너 왜그러니 정말

당연히 $ mysql_secure_installation으로 설정도 되지 않았다.

이를 해결하기 위해서는
(1) $PATH 환경변수에 mysql@8.0 버전의 경로를 등록하고,
(2) mysql@8.0/bin/mysql/usr/local/bin/mysql로 심볼릭 링크를 연결해야 한다.

1. mysql@8.0 경로 확인

$ brew --prefix mysql@8.0

>> /opt/homebrew/opt/mysql@8.0

2. 환경변수 등록

$ echo 'export PATH="/opt/homebrew/opt/mysql@8.0/bin:$PATH"' >> ~/.zprofile

$ source ~/.zprofile

3. 심볼릭 링크 생성

$ sudo ln -s /opt/homebrew/opt/mysql@8.0/bin/mysql /usr/local/bin/mysql

위와 같은 과정을 거치면

드디어 정상적으로 동작함을 알 수 있다.


MySql 보안 설정 및 실행

이 뒤의 내용은 에러 해결 후 일반적인 보안 설정과 실행에 관한 내용이다.

$ mysql_secure_installation

위 명령어를 입력하여 보안 설정을 하면 된다.

설정을 다음 포스팅을 참고하였다.

보안 설정을 완료한 후 MySql을 실행시켰다

$ sudo brew services start mysql@8.0 

이제 정상적으로 MySql이 동작한다.

또한, 아래 명령어를 입력하여 환경 변수와 현재 MySql이 정상적으로 실행하는 지 확인해보자.

$ echo $PATH # 환경변수 확인

$ brew services list # 현재 실행 중인 서비스 확인

결론

이유는 모르겠지만, 나는 다른 해결 방법 포스팅에 나오는 경로가 아닌 다른 경로(/opt/homebrew/opt/mysql@8.0/)에 MySql이 설치가 되었다.

이게 문제의 원인일 지도 모르겠다는 생각이 들기도 한다.

profile
computer engineering student

0개의 댓글