c-market database splint 정리

Jaemin Jung·2021년 7월 26일
0
post-thumbnail
  1. 스키마 시드파일 & 배치모드

schema.sql 파일은 데이터베이스에 테이블을 생성해주는 역할

seed.sql 파일은 테이블에 데이터를 적용?시켜주는 역할

사용법
CLI(터미널) 환경에서 해당 파일 경로를 유의하여 명령어를 작성

mysql -u root -p < server/schema.sql -Dcmarket

  • 커맨드를 통해 데이터베이스에 테이블을 생성해준다.

mysql -u root -p < server/seed.sql -Dcmarket

  • 커맨드를 통해 테이블에 데이터를 적용시켜 준다.

위 커맨드는 배치모드에서 mysql 사용하는 방법이고, 이를 사용하는 이유는 다음과 같다.

  • 쿼리를 반복적으로(예: 매일 또는 매주) 실행하는 경우 스크립트로 만들면 실행할 때마다 다시 입력하지 않아도 됩니다.(ex -> 양식파일을 여러개 복사해서 다양한 상황에 사용해보는 상황)

  • 스크립트 파일을 복사하고 편집하여 유사한 기존 쿼리에서 새 쿼리를 생성할 수 있습니다.

  • 일괄 처리 모드는 쿼리를 개발하는 동안 특히 여러 줄 문 또는 여러 문 시퀀스에 유용할 수도 있습니다. 실수를 해도 모든 것을 다시 입력할 필요가 없습니다. 스크립트를 편집하여 오류를 수정한 다음 mysql 에게 다시 실행하도록 지시하십시오.

  • 많은 출력을 생성하는 쿼리가 있는 경우 화면 상단에서 스크롤되는 것을 보는 대신 호출기를 통해 출력을 실행할 수 있습니다.

  • 다른 사람들도 명령문을 실행할 수 있도록 스크립트를 배포할 수 있습니다.

  1. 환경변수 사용하는 방법 (dotenv)

require('dotenv').config()

  • dotenv 모듈을 불러오고

DB_HOST=localhost
DB_USER=root
DB_PASS=s1mpl3

  • 프로젝트의 전역 파일 위치에서 .env파일에 환경변수를 저장한다.

const db = require('db')
db.connect({
host: process.env.DB_HOST,
username: process.env.DB_USER,
password: process.env.DB_PASS
})

  • 저장한 환경변수를 사용한다. 환경변수를 사용할때는 process.env를 앞에 붙여준다.
    process.env는 NodeJS 앱이 동작할 리눅스/유닉스 시스템의 환경변수를 이용하는 것이다.

주의할점 - .env파일은 배포할때? 깃에 푸쉬할때 같이 따라가면 큰일난다. why? 내 아이디 비밀번호가 노출되기 때문 그래서 gitignore파일에 .env를 추가시켜줘야 한다.

mime타입 : 클라이언트에게 전송된 문서의 다양성을 알려주기 위한 메커니즘

profile
내가 보려고 쓰는 블로그

0개의 댓글