이제 주차가 점점 마무리 되면서 API실습을 위한 DB생성을 해봅시다.
배포가 아닌 실습용 이기 때문에 로컬DB로 돌리도록 합시다. AWS는 이제 프리티어도 과금이 되기 때문에 저히들은 몇천원이라도 아껴야 하지 않겠습니까?
먼저 로컬환경에 데이터베이스를 설치 해봅시다. 여기서의 로컬환경은 PC 또는 노트북이 되는겁니다. 배포를 하는 환경에서는 DB가 꺼지면 안되니까 클라우드 환경이나 서버용 컴퓨터를 사용하는것이 좋겠죠?
포스팅하는 OS환경은 맥os입니다. Homebrew를 이용해서 설치하니 사용법을 모르니는 분들은 먼저 알고 읽어 보시길 바랍니다.
먼저 터미널에 MySQL을 찾아봅시다.
$ brew search mysql
위의 명령어를 입력하면 아래의 결과가 나옵니다.
여기서 여러가지 버전이 있는데요, 단순 MySQL을 설치하면 최신버전으로 설치됩니다. 5.7버전부터 json
타입을 지원했는데요, 저는 단순하게 실습을 진행하기 때문에 최신 버전으로 설치 하겠습니다.
$ brew install mysql
위의 명령어를 입력하면 터미널에서 열심히 설치를 진행합니다.
설치가 완료되면 이렇게 뜨게 됩니다. 이렇게 설치된 MySQL을 실행하는데는 두가지 방법이 있습니다. brew
로 실행하거나 MySQL로 실행하거나.
뭐로 실행하는지 어떤 차이가 있는데??????
brew
명령어와 mysql.server start
명령어를 사용하여 MySQL을 실행하는 방법은 차이점이 있습니다. 각각의 명령어는 다음과 같은 환경에서 사용됩니다
brew
명령어로 MySQL 실행하기: MySQL을 Homebrew를 통해 설치한 경우, brew services
명령어를 사용하여 MySQL 서비스를 시작, 중지, 재시작할 수 있습니다. 예를 들어, MySQL을 시작하려면 다음과 같은 명령어를 사용합니다:
brew services start mysql
위 명령어는 Homebrew를 통해 설치된 MySQL 인스턴스를 macOS의 서비스로 등록하고 자동으로 시작합니다. 이 방법의 장점은 MySQL이 시스템 부팅 시 자동으로 시작되도록 설정할 수 있습니다.
명령어를 실행한 후 brew services list
를 실행하면 MySQL의 상태가 나오게 됩니다.
mysql.server start
명령어로 MySQL 실행하기: mysql.server start
명령어는 MySQL 서버를 직접 시작하는 스크립트입니다. 터미널에서 바로 입력해서 MySQL 서버를 즉시 시작합니다.
mysql.server start
이 방법은 MySQL 서비스를 수동으로 제어할 때 유용하며, Homebrew를 통하지 않고 다른 방법으로 MySQL을 설치했거나, 특정한 이유로 Homebrew 서비스를 사용하지 않을 때 적합합니다.
이제 MySQL을 실행했으니 초기 설정을 해줘야 합니다. 접속자의 아이디와 패스워드, 외부접속 허가 등등. 설치 완료후에 생성된 메세지에 명령어를 입력해봅시다.
mysql_secure_installation
그럼 위와 같은 출력이 나옵니다. 여기서 몇가지 질문이 나오는데 그건 스스로 해석해서 선택해봅시다.
그러나 첫번째 질문인 복잡한 패스워드는 NO를 입력합시다.
이렇게 설정을 완료하면 로컬 MySQL 생성이 완료됐습니다!!👏👏👏
mysql -u -root -p //-u = user , -p = password
위의 명령어를 입력하면 정상적으로 MySQL이 실행이 됩니다. 이제 터미널에서 테이블과 스키마를 생성해도 됩니다만,좀더 편한 프로그램으로 다룰 수 있습니다. Workbench,DataGrip,DBeaver등등 의 프로그램으로 MySQL과 연동하여 쿼리를 작성하는것이 좋습니다. 저는 DataGrip을 통해서 접속하겠습니다.
자세한 datagrip 사용법은 다루지 않겠습니다. 바로 본론으로 ERD Cloud에서 생성해놓은 ERD를 통해서 SQL을 export해 테이블을 생성해줍시다.
스키마를 생성한뒤 테이블 생성에서 SQL을 입력해줍니다.
이런 식으로!
이렇게 모든 테이블이 이식 된걸 확인할수 있습니다! 이제 데이터를 입력하거나 입력받아서 DB를 통해 테스트 or 운영을 하면 되겠습니다.