[m1] mariaDB 설치하는 법 (에러 해결 포함!)

FE.1·2023년 4월 19일
1
post-thumbnail

장장 4시간만에 해결했다. 눈물,,,,

중간에 m1은 그냥 mariaDB를 설치하지 못하는구나 합리화를 하려했지만, 구글링이 나를 살렸다.
개발자 선배분들의 경험들을 참고하여 문제를 해결 할 수 있었고, 나와 같은 상황에 놓여있는 분들께 조금이나마 도움을 주고자 작성하게 되었다.

기존에 MySQL를 이미 사용하고 있었지만, mariaDB를 사용해야 하는 상황이다.
그럼 시작해보자!

📍 설치 및 실행

MySQL(3306)를 이미 사용하고 있는 경우엔, mariaDB의 PORT 번호(3307)를 변경하면 사용할 수 있다고도 하는데, 귀찮아서 그냥 MySQL를 삭제 해버렸다.

$ brew install mariadb 
$ brew services start mariadb // 실행
$ brew services stop mariadb // 중지
$ brew services list // 상태 확인

🤯 에러 발생

mariadb 입력 시
ERROR 2002 (HY000): Can't connect to local server through socket '/tmp/mysql.sock'(2)

brew services list 를 입력했을 때 mariaDB가 started로 떠야하는데 stopped으로 계속 뜨는 현상 발생

결론부터 말하자면, 해당 에러는 잔존 파일(특히 MySQL 설정 파일인 my.cnf 파일)로 인한 에러 발생이었다.

✅ 해결책

  1. 설치한 mariaDB를 완전히 삭제하기
brew services stop mariadb
brew remove mariadb
brew cleanup
  1. finder 검색을 통해 mysql, mariadb 관련 파일들 전부 삭제하기
    (저는 중요한 파일은 없어서 과감하게 삭제했습니다. 혹시 모르니 잘 확인하시고 삭제하세요!)

  2. my.cnf 파일 삭제하기
    finder 에서 상단에 이동 > 폴더로 이동 클릭 /opt/homebrew/etc/ 경로 입력 후 my.cnf 이름을 포함한 파일들 전부 삭제하기

  3. 재시동 하기 (이번에 느꼈지만, 뭔가 효과가 있던 거 같다. 머리도 식힐 겸 삭제 후 재시동 하자!)

  4. mariaDB 재설치
    mariaDB 상태를 확인하면 started인 것을 확인할 수 있다.

  5. mysql -uroot 실행하기
    만약, ERROR 1698 (28000): Access denied for user 'root'@'localhost' 발생하면 아래 글을 참고하기
    에러 발생시 클릭
    이후에는 mysql -u root -p 로 접속하면 된다.

  6. 이후 만약에 로그인 시도, 에러 발생
    ERROR: Access denied for user 'root'@'locahost' (using password: NO)
    -> mariaDB 보안 설정을 해줘야 한다.
    sudo mariadb-secure-installation
    그러면 비밀번호를 입력하고, (Y/N) 이 나오면 쭈욱 Y를 누르자!
    (근데 중간에 원격에서 접속을 허용할거냐는 질문이 나오는데 나는 원격을 허용할 거라 해당 부분은 N이라고 입력했다.)

📌 회고

  • 설치도 설치지만, 깔끔하게 삭제하는 것도 정말 중요하다. (충돌 방지)
  • 재시동을 습관화하자
  • 터미널과 더 친해지자

감사한 분

profile
공부하자!

0개의 댓글