1. 먼저 mysql에 접속해 cmarket 데이터베이스를 생성한다.
mysql -u root #mysql 접속. pw없으면 -p를 안적어줘도 된다.
CREATE DATABASE cmarket; # cmarket이름의 데이터베이스 생성
2. 미리 구성되어있는 Cmarket 스키마(schema.sql)를 기반으로, MySQL에 cmarket데이터베이스에 테이블을 생성한다.
--> im-sprint-cmarket-database 파일을 보면, server폴더에 schema.sql파일이 존재한다.
그 파일에는 Cmarket 스키마가 구성되어있다.
이 스키마를 토대로 MySQL에 아까 생성한 cmarket 데이터베이스에 테이블을 생성한다는 의미.
먼저, git clone을 한 im-sprint-cmarket-database 레포지토리에 들어가서 아래 커맨드를 입력한다.
# CLI(터미널) 환경에서 레포지토리에 진입하여 커맨드를 입력
mysql -u root -p < server/schema.sql -Dcmarket
# 위 커맨드를 입력하면 cmarket데이터베이스에 schema.sql테이블이 자동으로 생성된다.
파일 schma.sql은 관계형 데이터베이스의 기초 뼈대의 역할을 한다. schema.sql을 활용하여 내부 테이블을 생성한다.
커맨드 창에 명령어를 하나하나 입력하는 방법과 다르게, 필요한 명령을 정리한 파일(schema.sql)을 작성한 다음, '배치모드'로 실행중이 MySQL서버에 '한번에' 적용한다.
** PATH/TO/YOUR/schema.sql 은 터미널의 현재 위치에서 schema.sql의 위치까지 경로를 지정해야 한다는 의미.
만약 터미널의 위치가 스프린트 폴더라면, 상대경로만 이용해도 충분하므로 server/schema.sql을 입력.
**사용되는 -D 커맨드는 지정한 파일을 import할 데이터베이스를 선택하는 명령어
3. 위에서 생성한 테이블에 기반이 되는 데이터를 다음 명령어로 저장한다.
파일 seed.sql은 생성한 데이터베이스 테이블(schema.sql)에 준비된 데이터(seed.sql)를 미리 저장한다.
데이터베이스의 스키마 구성과 다르면, 데이터가 저장되지 않는다!
# CLI(터미널) 환경에서 레포지토리에 진입하여 커맨드를 입력
mysql -u root -p < server/seed.sql -Dcmarket
'DataBase' 카테고리의 다른 글
im-sprint-cmarket-database 2. 서버 -1 (0) | 2021.11.17 |
---|