나는 노트북을 맥을 사용하는데 맥에서는 homebrew 라는 패키지 관리자를 설치하여 사용할 수 있다. 프로그램 설치시 유용하게 활용하고 있다. 개발 환경을 조금 더 편리하게 구성할 수 있어 편리하였다. MYSQL도 homebrew를 이용하여 편리하게 설치할 수 있다.



1. Homebrew 설치

아래의 사이트를 참고하여 homebrew를 설치할 수 있다.

  • homebrew : https://brew.sh/index_ko

맥에는 루비가 설치되어 있으므로 다음의 루비 명령어를 통해서 homebrew를 설치할 수 있다. 명령어를 실행하면 homebrew가 자동으로 설치 된다.

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"



2. mysql server 설치

일단 mysql을 사용하려면 mysql server와 mysql 데이터베이스를 GUI로 확인가능한 mysqlworkbench를 homebrew를 이용하여 설치한다. 우선 brew 명령어를 통해서 mysql에 관련된 프로그램들을 검색할 수 있다.

$ brew doctor
$ brew search mysql



위의 이미지에서 formulae 의 mysql과 mysql-client casks의 mysqlworkbench를 설치한다. mysql-client는 커맨드라인에서 mysql 서버 접속시 사용된다.

$ brew install mysql
$ brew install mysql-client
$ brew cask install mysqlworkbench

이렇게 해서 mysql 서버와 mysqlworkbench 설치가 완료되었다.

3. mysql 실행 확인

아래의 명령어를 실행하면 mysql 커맨드라인으로 접속이 가능하도록 설정 할 수 있다.

$ brew services start mysql

==> Tapping homebrew/services
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-services'...
remote: Counting objects: 14, done.
remote: Compressing objects: 100% (10/10), done.
remote: Total 14 (delta 0), reused 7 (delta 0), pack-reused 0
Unpacking objects: 100% (14/14), done.
Tapped 1 command (43 files, 55.2KB).
==> Successfully started `mysql` (label: homebrew.mxcl.mysql)

그 다음 커맨드라인 명령어로 접속하면 root 계정으로 접속이 되는 것을 확인 할 수 있다.

$ mysql -uroot



root 계정에 비밀번호를 설정하고 싶다면 아래의 명령어를 실행하면된다.

$ mysql_secure_installation
......
Press y|Y for Yes, any other key for No: no
Please set the password for root here.

New password:패스워드 입력

Re-enter new password: 패스워드 확인
.....

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

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

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.
.....

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

All done!
4. mysqlworkbench로 mysql 접속하기

이제 mysqlworkbench로 접속하기 위하여 한가지 권한 셋팅을 해야한다. 권한 셋팅을 하지 않으면 아래의 오류가 발생한다. MYSQL 8.0 오류라고 한다.

Authentication plugin 'caching_sha2_password' cannot be loaded: dlopen(/usr/local/mysql/lib/plugin/caching_sha2_password.so, 2): image not found

먼저 mysql을 커맨드 라인으로 접속한다.(root계정 패스워드 0000)

$ mysql -uroot -p0000

그 다음 아래의 쿼리를 날려 권한 수정을 해준다.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '0000';

권한 설정을 해준뒤 워크벤치로 접속하면 접속이 되는 것을 확인할 수 있다.




reference
  • https://github.com/helloheesu/SecretlyGreatly/wiki/%EB%A7%A5%EC%97%90%EC%84%9C-mysql-%EC%84%A4%EC%B9%98-%ED%9B%84-%ED%99%98%EA%B2%BD%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0
  • https://github.com/appkr/l5code/issues/4
  • https://stackoverflow.com/questions/49194719/authentication-plugin-caching-sha2-password-cannot-be-loaded