회사에서 테스트 서버에 구축 했던 서버 구성을 다른 컴퓨터로 이전 하면서 느꼈던 삽질기를 정리함.
환경 : Mac OS 카탈리나 10.15+
※ 주의! 처음에는 Homebrew 를 이용해서 mysql 을 설치했다. DB 구동에 큰 문제는 되지 않지만 mecab 설치에 필요한 일부 파일들이 부족해 찾아 보던 중 정확한 방법이 있어서 아래 방법을 사용했다.
STEP - 1 MySQL 설치
기존 Mysql 삭제
brew install mysql로 설치했을 경우
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/bin/mysql*
sudo rm -rf /usr/local/Cellar/mysql
ps. (엔터) 는 앞에 명령어를 치고 키보드 엔터를 내려 치라는 소리임.
mySQL 홈페이지에서 DMG파일로 설치했을 경우
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/PreferencePanes/My*
sudo rm -rf /var/db/receipts/com.mysql.*
ps. (엔터) 는 앞에 명령어를 치고 키보드 엔터를 내려 치라는 소리임.
주의 사항: 파일을 삭제한다고 해도 이미 실행중인 프로그램은 종료되지 않으므로 파일 삭제 후, 재부팅해줄 것!
Mysql 5.7 설치
1. ,MySql 사이트에 들어가서 파일 다운받기.
링크: https://dev.mysql.com/downloads/mysql/5.7.html#downloads
2. 다운로드 된 'mysql-5.7.31-macos10.14-x86_64.dmg' 실행해서 설치하기
3. 맥 OS 의 '시스템 환경설정' > 하단 'MySQL' 클릭
'Start MySQL Server' 클릭해서 'Stop MySQL Server' 으로 변경해야 MySQL 이 실행되는 중이다.
'Automatically Start MySQL Server on Startup'은 맥 os 부팅 시 자동으로 MySQL 실행 하겠다는 말인데 나는 안할꺼임!
터미널에서 mySQL 실행하기
MySQL 설치된 디렉토리 이동
cd /usr/local/mysql/bin
1-1 MySQL 실행
bin ./mysql -uroot -p
- bin ./mysql: 난 지금부터 mysql을 쓰고 싶어라고 컴퓨터에게 알림
- -u: user를 의미
- root: root라는 아이디를 가진 사용자임을 의미
- -p: password. 엔터치고 아까 카피해놓은 비밀번호를 입력한다.
1-2 위 명령어가 안먹히는 경우.
최상위 경로로 돌아오기
cd
명령어 실행하기
/usr/local/mysql/bin/mysql -uroot -p
비밀번호 초기화
UPDATE mysql.user SET authentication_string='[원하는 비밀번호]' WHERE User='root';
ex) UPDATE mysql.user SET authentication_string='1q2w3e' WHERE User='root';
실행 완료!!
STEP - 2 MySQL dump file
dump file import
source < [dump file name].sql
([dump file name].sql 은 dump file 명을 말하는 것이다. 예 : mysql> source < dump_mysqldb_20200707.sql)
또는!!
/usr/local/mysql/bin/mysql -uroot -p [db 명] < [dump 파일명].sql
dump file import error
문제>
"The user specified as a definer ('root'@'%') does not exist" 또는
"The user specified as a definer ('temp'@'%') does not exist" 등등
원인>
Mysql의 권한설정의 문제입니다.
해결>
아래와 같이 권한을 설정하면 됩니다.
grant all on *.* to 'root'@'%' identified by 'password' with grant option;
참고
https://velog.io/@wow/Mac%EC%97%90%EC%84%9C-mySQL5.7-%EC%9E%AC%EC%84%A4%EC%B9%98
https://dev.mysql.com/doc/refman/5.7/en/reloading-sql-format-dumps.html
https://likejirak.tistory.com/163