이번 블로그에서는 macBook Pro 를 구매한 기념으로 HomeBrew 를 이용하여 Mysql 를 설치해보도록 하겠습니다.
우선 macOS 에서도 Mysql 공식 홈페이지에서 설치 파일을 다운로드를 받아 설치가 가능하지만 macOS 에서 제공하는 유용한 도구를 이용한다면 빠르게 구축이 가능합니다.
Mysql 를 HomeBrew 로 설치하기 위해서는 당연히 HomeBrew 가 설치 되어 있어야 합니다.
HomeBrew 설치는 아래사이트에서 자세하게 나와있어 참고하기 바랍니다.
https://nhj12311.tistory.com/28
최신 버전 Brew 업데이트
HomeBrew 를 설치후 최신버전으로 업데이트를 해주세요
brew를 업데이트 한뒤 '$brew search mysql' 명령어로
mysql 설치 버전을 확인해 주세요.
2020년 9월 기준으로 최신버전은 5.7 으로 확인이 되네요
Mysql 설치
$brew install mysql 명령어로 mysql 을 설치 합니다.
설치를 완료 하면 $mysql.server. start 명령어로 mysql 을 실행합니다.
Mysql 보안 설정
mysql 보안 설정하기 위해 $mysql_secure_install 을 입력해주세요
그리고 첫 질문에는 Would you like to setup VALIDATE PASSWORD component? 라는 내용이 출력 됩니다.
즉 위 내용을 해석하면 복잡한 패스워드를 설정하거냐 아니면 단순하게 갈것이냐 의 내용입니다.
복잡한 설정 - 숫자 영문자 혼합
(asdF12d1)
단순한 설정 - 하나의 문자로 가능
(abcd)
저는 복잡한 설정을 원해서 y 를 입력하였습니다.
위 질문에 y로 입력하면 아래 어떻게 패스워드 형식을 어떻게 할것인지 질문합니다.
LOW : 패스워드 길이 8자리 이상
MEDIUM : LOW + 숫자 + 영문자 + 특수문자
STORNG : MEDIUM + dictonary 암튼 복잡한거 같습니다
저는 테스트 용으로 사용할거기 때문에 LOW 로 선택하였습니다.
그리고 패스워드를 입력합니다. 제가 입력한 패스워드 strength 가 25점 이라네요 ㅠㅠ
strength 를 100점으로 맞쳐야 합니다.
아 뭐가 잘못된걸까.. 키보드가 이상한가 ㅠㅠ
드디어 100점을 완성했네요 그리고 mysql 접속시 사용자 옵션을 사용할건지 질문을 합니다
(Remove anonymouse users? )
Y 로 입력시 mysql -uroot
N 으로 입력시 mysql (-u 불필요)
저는 사용자 옵션을 넣었습니다 (Y)
DIsallow root login remotely ?
root 원격 접속을 비활성화 할지 질문을 합니다.
즉 다른 IP에서 root 로 접속 활성화 묻는 내용입니다.
저는 제 컴퓨터만 접속하는것을 원해서 Y 로 입력 하였습니다.
Remove test database and access to it ?
Test 용 Database 를 제거할건지에 대한 내용입니다.
저는 사실 Test 용 DB가 필요가 없어 Y 를 입력하였습니다.
Reload privilege tables now ?
변경된 권한에 대한 내용을 테이블에 적용할건지 묻는 내용입니다.
저는 Yes 로 했습니다.
드디어 질문이 끝났습니다. 이제 mysql 접속을 해보겠습니다.
$mysql -uroot -p
해당 명령어를 입력하면 mysql 에 접속하면서 mysql> 모양이 나옵니다.
그리고 status 를 입력해보면 mysql 관련하여 정보가 출력되는데
여기서 characterset 이 utf8mb4로 설정이 되어 있어야 합니다.
여기까지가 Homebrew 이용하여 Mysql 설치 및 설정에 대한 내용 입니다.
설치하면서 삽질이 조금 있었지만 그리고 Homebrew 라는 도구가 얼마나 편한지 알수 있었습니다.
긴글 읽어 주셔서 감사합니다.
참고 사이트 : whitepaek.tistory.com/16
추가적으로 mysql 에 접속을 하려고 했을때 아래 스샷과 가이 Can't connect to local MySQL server through socket ~ 이라면 mysql 서버가 제대로 가동중인지 확인해 보자
mysql server가 정지 상태여서 mysql.server start 가동 하였습니다.