# MySQL 8.0 접속 오류 해결 (Homebrew, macOS)

# 증상

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '.../mysql.sock'

# 원인

  1. 버전 다운그레이드 충돌 — 데이터 디렉토리가 MySQL 8.4.x로 생성됐는데 8.0.x로 실행하려 해서 발생
  2. 소켓 디렉토리 미존재 — plist가 /opt/homebrew/var/mysql@8.0/ 소켓을 사용하도록 설정돼 있지만 해당 디렉토리가 없음

# 해결 방법

1. 서비스 중지

brew services stop mysql@8.0

2. 기존 데이터 삭제 및 재초기화

rm -rf /opt/homebrew/var/mysql
/opt/homebrew/opt/mysql@8.0/bin/mysqld --initialize-insecure --datadir=/opt/homebrew/var/mysql

3. 소켓 디렉토리 생성

mkdir -p /opt/homebrew/var/mysql@8.0

4. 서비스 재시작

brew services restart mysql@8.0

5. 접속 확인

mysql -u root

주의

2번 과정에서 기존 데이터베이스가 모두 삭제됩니다. 데이터를 보존하려면 먼저 mysqldump로 백업하거나, MySQL 8.4를 설치해 버전을 맞춰야 합니다.