WHITEPAEK Tech Docs

Total : 1,063,439 Today : 0 Yesterday : 312

macOS MySQL 설치 및 설정 사용법

macOS에서 MySQL 설치, 삭제, 환경변수 설정 및 사용법!

Web 공부를 하다 보면 데이터베이스는 필수로 사용되는 거 같습니다.
저는 Web 개발 공부를 하고 있는데, 데이터베이스로 MySQL을 사용하려고 합니다.
MySQL 설치는 쉽게 할 수 있으나 설치하고 나서 설정하는 부분은 처음 하면 상당히 까다로운 거 같습니다.
제가 MySQL을 설치하고 설정한 방법을 차근차근 설명드리도록 할게요!

- 설명하기에 앞서 "macOS Mojave 버전 10.14" 운영체제에서 Homebrew(홈브류)를 이용하여 설치했습니다.






1. MySQL 설치 방법


MySQL 사이트로 접속 후 다운로드하여 설정해도 괜찮습니다.


하지만,

저는 macOS 용 패키지 관리자 Homebrew를 이용하여 설치하였습니다.

Homebrew(홈브류)를 통해서 설치한 이유는

까다로운 설정 과정이 단순화되며,

환경변수 설정이 필요 없고 관리가 용이하기 때문입니다.


macOS로 개발 공부를 하신다면

꼭! Homebrew(홈브류)를 사용하시는 걸 적극 권장 드립니다.

☛ macOS 용 패키지 관리자 Homebrew(홈브류) 설치 및 사용법






"command + 스페이스바" 키를 이용하여 Spotlight 검색창을 실행시켜주세요.






"터미널"을 입력 후 "return" 키를 눌러주세요.






Tip!

터미널 실행 후 사진과 글자색이 다르다고 당황하지마세요!

자신이 원하는 스타일로 커스텀 할 수 있습니다.

☛ 터미널 나만의 스타일로 변경하기!




"터미널" 창이 실행되었으면

이제부터 Homebrew를 이용하여 MySQL을 설치하도록 하겠습니다.






Homebrew를 이용하기 전 반드시 "brew update" 명령어를 이용해서

최신 버전으로 업데이트해주세요.






"brew search mysql" 명령어를 이용하여

자신이 설치할 MySQL 명칭을 확인해주세요.

(ex. "mysql@5.5" 이런 식의 명칭은 "MySQL 버전 5.5"입니다.)






"brew install mysql" 명령어를 이용하여 최신 버전을 설치하도록 하겠습니다.

(다른 버전을 원하시는 분은 목록에서 나온 명칭을 입력해주시면 됩니다.

ex. "brew install mysql@5.5" 명령어를 입력하면 버전 5.5가 설치됩니다.)






설치가 완료되었다면 "brew list" 명령어를 이용하여 설치 목록을 볼 수 있습니다.

정상적으로 mysql이 설치된 걸 확인할 수 있습니다.






2. MySQL 설정 방법

"mysql.server start" 명령어를 이용하여 MySQL 서버를 실행시켜주세요.






사진처럼 네트워크 연결을 묻는 창이 실행된다면 "허용"을 클릭해주세요.

(해당 창이 안 뜬다면 무시하셔도 괜찮습니다.)






MySQL 설정을 하기 위해서

"mysql_secure_installation" 명령어를 입력해주세요.






"Would you like to setup VALIDATE PASSWORD component?

Press y|Y for Yes, any other key for No"

비밀번호 가이드 설정에 대한 질문입니다.

Yes 또는 No를 입력해주세요.


Yes - 복잡한 비밀번호 설정

(ex. "q1w2e3r4"와 같은 조합형(?) 비밀번호를 설정하여야 합니다.)

No - 쉬운 비밀번호 설정

(ex. "1234"처럼 쉬운 비밀번호를 설정할 수 있습니다.)


*저는 "No"로 설정하였습니다.






앞으로 사용할 새로운 비밀번호를 입력해주세요.

(비밀번호를 입력할 때 창에 아무것도 입력되지 않으므로 그냥 입력하시면 됩니다.)






"Remove anonymous users? (Press y|Y for Yes. any other key for No)"

사용자 설정을 묻는 질문입니다.

Yes 또는 No를 입력해주세요.


Yes - 접속하는 경우 "mysql -uroot"처럼 -u 옵션 필요

No - 접속하는 경우 "mysql"처럼 -u 옵션 불필요


*저는 "Yes"로 설정하였습니다.






"Disallow root login remotely? (Press y|Y for Yes, any other key for No)"

다른 IP에서 root 아이디로 원격접속을 설정하는 질문입니다.


Yes - 원격접속 불가능

No - 원격접속 가능


*저는 "Yes"로 설정하였습니다.






"Remove test database and access to it? (Press y|Y for Yes, any other key for No)"

Test 데이터베이스를 설정하는 질문입니다.


Yes - Test 데이터베이스 제

No - Test 데이터베이스 유지


*저는 "Yes"로 설정하였습니다.






"Reload privilege tables now? (Press y|Y for Yes, any other key for No)"

변경된 권한을 테이블에 적용하는 설정에 대한 질문입니다.


Yes - 적용시킨다.

No - 적용시키지 않는다.


*저는 "Yes"로 설정하였습니다.

(해당 질문은 무조건 "Yes" 하시기 바랍니다.)






"All done!"

모든 설정이 완료되었습니다.






"mysql -uroot -p" 명령어를 이용하여 비밀번호를 입력하고 로그인해주세요.






정상적으로 로그인이 되면 쉘이

 "mysql>"로 변경된 걸 확인할 수 있습니다.






"status;" 명령어를 입력 후

characterset 설정이 전부 "utf8"인지 확인해주세요.

(기본적으로 "utf8"로 설정이 안 돼있다면 설정을 바꿔주셔야 합니다.)






"mysql>" 쉘에서 로그아웃 명령어는 "exit" 또는 "quit"입니다.

MySQL 서버 종료 명령어는 "mysql.server stop"입니다.


이상으로 MySQL 설치 후 초기 설정 방법에 대한 설명이 끝났습니다.






3. MySQL 삭제 방법


Homebrew(홈브류)로 설치한 MySQL을 깔끔하게 완전 삭제하는 방법입니다.

"터미널" 창을 실행시켜주세요.






"sudo rm -rf /usr/local/var/mysql" 명령어를 입력해주세요.

"Password"에는 자신의 Mac 비밀번호를 입력해주세요.

(비밀번호를 입력할 때 창에 아무것도 입력되지 않으므로 그냥 입력하시면 됩니다.)






"sudo rm -rf /usr/local/bin/mysql*" 명령어를 입력해주세요.






"sudo rm -rf /usr/local/Cellar/mysql" 명령어를 입력해주세요.


이제 마무리로 PC를 재부팅 해주시면 완전 삭제가 완료됩니다.






"brew list" 명령어를 이용하여 설치 목록을 확인하면 mysql이 삭제된 걸 볼 수 있습니다.

("/usr/local/" 디렉토리에 있는 var, bin, Cellar 폴더에서도 mysql에 관련된 파일이 깔끔하게 삭제된 걸 확인할 수 있습니다.)


이상으로 MySQL 완전 삭제 방법에 대한 설명이 끝났습니다.




(정리)

1. MySQL 서버 시작 : mysql.server start

2. MySQL DB 로그인 : mysql -uroot -p

3. MySQL DB 로그아웃 : exit 또는 quit

4. MySQL 서버 종료 : mysql.server stop




☛ MySQL GUI 개발도구 DataGrip 설치 및 사용 방법 (개발과 관리, 설계, 생성을 편하게 하기)

☛ IntelliJ에서 Java와 MySQL 연결 방법 (JDBC 연동)






✔︎ 오타, 잘못된 정보가 있을 경우 댓글 달아주세요~!

(확인 수정하도록 하겠습니다~^^)


✔︎ 궁금하신 정보가 있을 경우 댓글 달아주세요~!

(제가 아는 정보에 한해서 답변을 남겨드리도록 할게요~^^)

댓글(70)

  • 이전 댓글 더보기
  • kevin yoo
    2020.03.09 12:28

    튜토리얼의 달인이시네요! 섬세하게 순서를 놓치지 않고 잘하십니다. 정말 도움이 많이 됩니다.^^

  • 제니
    2020.04.06 17:57

    안녕하세요, 블로그 참고해서 my SQL 설치했는데 data grip에서 이런 메세지가 떠요 ㅠㅠ[S1009] setMaxRows() out of range. 1000000001 > 50000000.

    • 2020.04.07 10:08 신고

      MySQL 설정 관련해서 확인해보셔야 할 거 같습니다.

  • fabian
    2020.04.30 21:44

    우왓 블로그 보면서 진행했는데 잘 안되길래, 재부팅 후 다시 진행했더니 잘 되네요!!
    감사합니다 !!

  • ginii
    2020.05.16 17:21

    금방 따라서 했는데 mysql을 실행시키려고 하니 The server quit without updating PID file 이라고 뜨면서 오류가 뜨네요ㅠㅠ 이런 경우는 어떻게 해야 하나요?

    • 2020.05.17 22:57 신고

      mysql 소유자 권한을 바꿔주면 되는거 같습니다.
      해당 메시지를 구글링 해보시면 쉽게 방법을 찾으실 수 있습니다.

  • xmxm
    2020.06.17 23:23

    brew list명령어로 설치는 완료되었는데 실행이 안 되네여ㅜ
    5.7 버전인 경우에도 mysql.server start로 명령하면 되나요?

    • 2020.06.18 09:17 신고

      네, 말씀하신 명령어로 작동시킬 수 있습니다.
      "mysql -V" 명령어로 설치한 MySQL 버전을 확인해보시겠어요?

  • 박뿡치
    2020.07.04 20:27

    zsh: command not found: mysql.server 이라고 뜨는데 혹시 해결방법 아시나요?ㅠ

    • 2020.07.04 21:16 신고

      카탈리나 버전부터는 macOS 기본 쉘이 zsh로 바뀌었습니다! zsh 설정 파일에 mysql 환경변수 설정이 되어있는지 확인해보세요.

    • 2020.07.08 16:40

      zsh설정파일은 어디로 들어가야되는지 알려주실수있나요? 잘 몰라서요ㅠ

    • 2020.07.08 18:42 신고

      ~/.zshrc 위치에 있습니다~

  • 2020.07.09 14:27 신고

    ㅠㅠ 너무 감사합니다!!!! characterset 에서 utf8이 아니고 utf8mb4라서 바꾸려고하는데 아무리 찾아도 my.cnf 파일을 못찾겠어서요ㅠㅠ혹시 어떻게 바꾸는지 아시나요..??ㅠㅠ

    • 2020.07.09 16:58 신고

      Homebrew를 이용하여 설치하셨다면,
      /usr/local/etc/my.cnf
      /usr/local/Cellar/mysql@5.7/5.7.29/.bottle/etc/my.cnf
      위와 같은 경로에 my.cnf 파일이 있을 거예요~
      ("mysql@5.7/5.7.29"의 경우 설치한 mysql 버전에 따라 숫자가 다를 수 있으니 이 부분 확인해 주세요.)

    • 2020.07.10 08:52

      헉,,,ㅠㅠ너무감사합니당...ㅠㅠㅠ복받으세요.!!!!! :)

    • 2020.07.10 09:25 신고

      :)

  • 2020.07.29 17:02 신고

    제가 블로깅중에 mysql설치하고 hive연동하는 글이 있는데 설치법 링크 남기고 참고하라고 남겨두겠습니다!!

  • 최현지
    2020.08.06 08:49

    감사합니다! 덕분에 수월하게 설치했어요~

  • 2020.08.20 15:13 신고

    mysql 삭제를 꼭 sudo로 해줘야 하나요?
    그냥 brew uninstall mysql 이렇게 삭제하는거랑 뭐가 다른지 궁금합니다

    • 2020.08.20 19:20 신고

      sudo는 권한 명령어입니다.
      brew uninstall mysql은 brew 명령어로 mysql을 삭제하는 것입니다.

    • 2020.08.21 01:45 신고

      네 그러면 sudo로 하는거랑 brew uninstall 이랑 차이점이 뭔가요??
      둘다 완전삭제 가능한건가요?
      sudo로 디렉토리에 직접 접근해서 지울건지 brew로 지울건지 방식의 차이인가요?

    • 2020.08.21 09:25 신고

      brew 명령어로 지우면 아마 디렉토리까지 지워지지 않는 걸로 알고 있습니다.
      그러면 다음 재설치 했을 때 기존 설정값들이 남아 있는 걸로 알고 있거든요. 그래서 직접 디렉토리까지 완전하게 지워줬습니다.

  • Jasmine
    2020.09.08 10:09

    제가 영어와 한국어 모두 다 써야 하는데 characterset이 현재 utf8mb4로 되어 있습니다. 혹시 이것을 utf8로 수정하지 않으면 사용시 크게 문제가 되나요?

    • 2020.09.08 12:15 신고

      문제는 없으나, 이모티콘을 저장하려고 한다면 해당 테이블을 utf8mb4로 설정해 주셔도 됩니다.

  • 2020.10.15 18:05

    sudo로 디렉토리까지 지웠다가 재설치 하니 file or 디렉토리를 찾을수 없다면서 설치가 안되는데 어떻게 해야될까요?

  • 2020.10.15 18:20

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '(비밀번호입력)';

    비밀번호 입력란에 8513 적고 mysql 돌렸습니다

    그런데 그 이후부터 접속하려고 하면

    Enter password for user root:
    Error: Access denied for user 'root'@'localhost' (using password: YES)
    jh@bagjaehyeon-ui-MacBookPro ~ % mysql_secure_installation

    Securing the MySQL server deployment.

    이런 문구가 뜨면서 안됩니다... 해결 방안 있을까요? sudo로 완전히 지웠다가 재설치 해봐도 안되네요..

    • 2020.10.19 15:30 신고

      권한 설정이 정상적으로 안된 거 같습니다.
      root 권한에 대한 설정을 다시 진행해보셔야 할 듯합니다.

  • 2021.02.03 17:29

    5.5버전이 없어서 5.6버전을 설치했는데 brew list 검색하면 mysql@5.6 으로 뜨더라고요ㅠㅠ 거기서부터 mysql.server start 가 안돼요ㅠㅠ

    • 2021.03.06 22:08 신고

      설정 혹은 path 잡혀있는 부분 확인이 필요할 거 같습니다.

  • 2021.03.04 00:12

    mysql 설치 하고 sql workbench 설치도 가능한가요??

  • 수밍
    2021.03.09 11:02

    감사합니다! 교수님들은 거의 윈도우 운영체제로 수업하셔서 막막했는데 덕분에 오라클이랑 mysql 잘 설치했어요!!
    정말 저같은 멍청이더 알아 들을 수 있게 하나하나 설명이 적혀져 있어서 ㅎㅎ 감사해용😊😊😊

  • 써니
    2021.06.30 13:48

    덕분에 어렵지 않게 설치했습니다😁 좋은 정보 감사합니다!!

  • 겨울
    2021.08.30 13:48

    감사합니다~ 많은 도움이 되었습니다

  • 2021.09.22 20:51

    어떻게 utf8으로 변경할 수 있나요?ㅠㅠ

  • 2022.05.23 14:08 신고

    감사합니당