drizzle-kit up

This guide assumes familiarity with:

drizzle-kit up 커맨드는 Drizzle 스키마 스냅샷을 새로운 버전으로 업그레이드할 수 있게 해줍니다.
이 커맨드는 스키마의 JSON 스냅샷에 주요 변경 사항이 발생하거나 내부 버전이 업그레이드될 때 필요합니다.




drizzle-kit up 커맨드를 사용하려면 dialect와 데이터베이스 연결 정보를 지정해야 합니다.
이 정보는 drizzle.config.ts 설정 파일을 통해 제공하거나 CLI 옵션으로 직접 전달할 수 있습니다.

설정 파일 사용
CLI 옵션 사용
// drizzle.config.ts
import { defineConfig } from "drizzle-kit";

export default defineConfig({
  dialect: "postgresql",
});
npx drizzle-kit up

하나의 프로젝트에 여러 설정 파일 사용하기

하나의 프로젝트에서 여러 설정 파일을 사용할 수 있습니다. 이는 여러 데이터베이스 단계나 동일한 프로젝트 내에서 여러 데이터베이스를 사용할 때 매우 유용합니다.

npx drizzle-kit migrate --config=drizzle-dev.config.ts
npx drizzle-kit migrate --config=drizzle-prod.config.ts
📦 <project root>
 ├ 📂 drizzle
 ├ 📂 src
 ├ 📜 .env
 ├ 📜 drizzle-dev.config.ts
 ├ 📜 drizzle-prod.config.ts
 ├ 📜 package.json
 └ 📜 tsconfig.json

위 예제처럼 drizzle-dev.config.tsdrizzle-prod.config.ts 파일을 각각 사용하여 개발 환경과 프로덕션 환경에 맞는 설정을 적용할 수 있습니다.

확장된 설정 목록

drizzle-kit 설정은 drizzle.config.ts 파일을 통해 구성하는 것을 권장합니다. 하지만 CI/CD 파이프라인 등에서 필요할 경우, 모든 설정 옵션을 CLI를 통해 제공할 수도 있습니다.

dialect필수사용 중인 데이터베이스 방언. postgresql, mysql, sqlite 중 선택 가능
out마이그레이션 폴더, 기본값=./drizzle
config설정 파일 경로, 기본값=drizzle.config.ts
drizzle-kit up --dialect=postgresql
drizzle-kit up --dialect=postgresql --out=./migrations-folder