본문 바로가기
개발/개발 기타

MAC OS, MySQL 8.x 설치 및 삭제

by 똘똘이박사 2019. 4. 23.

 

이 포스팅의 개발 환경은 MAC OS, OpenJDK11 입니다.

 

MAC OS, Mysql 8.x 설치 및 삭제

MySQL 설치

MySQL을 설치하는 방법에는 크게 2가지 방법이 있습니다. dmg 파일을 다운로드 받아 실행하여 설치 하는 방법과 homebrew를 사용해 MySQL을 설치 하는 방법입니다. 이 포스팅에서는 homebrew를 이용해 MySQL을 설치 하도록 하겠습니다.

 

우선 터미널 프로그램을 실행시키고 아래와 같이 명령어를 실행 시킵니다.

> brew install mysql

설치가 완료 되었습니다.

아래 명령을 실행시켜 mysql 이 제대로 설치 되었는지 확인합니다.

> brew service list

설치가 제대로 되었습니다. 아래의 명령어로 서버를 실행해 봅니다.

> brew services start mysql

그리고 다시 brew services list 명령으로 서버가 동작 하는지 확인해 봅니다.

MySQL을 구동하는 또 다른 방법은 mysql.server 명령어를 사용하는 것입니다. mysql.server 명령어를 사용하기 위해 우선은 brew services 명령으로 실행한 MySQL을 정지 시킵니다.

> brew services stop mysql

mysql의 동작 상태를 확인하고, mysql.server 명령어로 mysql을 시작시켜 봅니다.

mysql.server 명령어로 실행시킨 mysql 은 brew services 명령어로 서버가 실행중인지 확인 할 수 없습니다.

따라서 다른 방법으로 확인을 해야 하는데 이때 사용할 수 있는 명령어로 netstat -na 명령어가 있습니다. MySQL이 사용하는 포트는 3306 이므로 파이프를 이용해 MySQL의 포트를 알려주면 쉽게 확인이 가능합니다.

서버가 제대로 동작중인 것을 확인 할 수 있습니다.

mysql.server start 명령어로 시작한 서비스는 mysql.server stop 명령으로 정지시킬 수 있습니다.

> mysql.server stop

 

 

MySQL 삭제

(MySQL 삭제는 https://github.com/appkr/l5code/issues/4을 참고 하였습니다.

homebrew로 MySQL을 설치 했듯이 homebrew로 MySQL을 삭제 할 수 있습니다.

우선 MySQL이 동작하고 있는지 확인하고, 어디에 설치되어 있는지 확인해 봅니다.

서비스가 동작중인지는 아래의 명령을 통해서 확인 할 수 있습니다. 

> netstat -na | grep 포트번호

MySQL의 포트번호는 3306 이므로, 서비스가 돌고 있다면 아래와 같이 3306의 서비스를 확인 할 수 있습니다.

또 한 가지 brew 명령으로 서비스를 실행하였을 경우 아래와 같은 명령으로 서비스가 운영중인지 아닌지를 확인 할 수 있습니다. 

> brew services list

서비스가 운영중이라면 위와 같이 status 값이 'started' 로 표시 됩니다. 

brew services list 명령으로 실행된 서비스는 mysql.services stop 명령으로 중지 시킬 수 없습니다. 반드시 brew 명령으로 중지해야 합니다. 중지 명령은 아래와 같습니다.

> brew services stop mysql

명령을 실행하고 서비스 상태를 확인해 봅니다.

 

mysql를 이제 삭제해 봅니다.

mysql이 설치되어 있는 경로는 보통 /usr/local/var/ 입니다. (설치되는 버전에 따라 경로가 바뀔 수 있습니다.)

rm 명령으로 mysql 디렉토리를 아낌없이 삭제해 줍니다.

usr/local/var> rm -rf mysql

그리고 homebrew uninstall 명령으로 mysql 을 삭제해 줍니다.

usr/local/var> brew uninstall mysql

잘 삭제가 되었는지 확인해 봅니다.

>brew services list

현재 brew로 아무것도 설치가 되어 있지 않아 위와 같은 Warning 메시지가 나옵니다.

 

 

 

 

 

 

 

 

 

※ 포스팅에 오타나 잘못된 부분, 추가적으로 더 알고 싶은 부분이 있으면 댓글 주세요~

 

반응형