바이브 코딩 사전
마이그레이션
바이브 코딩 사전

마이그레이션

데이터베이스 구조 변경을 파일로 기록하고 순서대로 적용하는 방식이다. 새 테이블을 만들거나 컬럼을 추가하거나 인덱스를 바꾸는 작업을 수동으로 콘솔에서만 처리하면, 로컬·미리보기·운영 환경의 스키마가 서로 달라져 버그가 생기기 쉽다. 마이그레이션 파일을 Git에 함께 남기면 누가 언제 어떤 구조를 바꿨는지 추적할 수 있고, 배포 과정에서도 같은 변경을 재현할 수 있다. AI에게 DB 변경을 요청할 때는 코드 수정뿐 아니라 마이그레이션 생성과 롤백 가능성까지 요구해야 안전하다.

영어 표기

Migration

예시

프로필 사진 기능을 추가할 때 users 테이블에 avatar_url 컬럼을 더하는 마이그레이션을 만들고, API 코드와 테스트를 같은 커밋에서 검증한다.

카테고리
데이터베이스·데이터
난이도
basic
태그
마이그레이션 · 스키마변경
슬러그
migration
상태
published
정렬 순서
149

함께 읽기

연관 용어

CLI·터미널 도구

환경 변수

영어 표기 Environment Variable

환경 변수는 코드 밖에서 실행 환경에 주입하는 설정값이다. 배포 주소, 기능 플래그, 외부 서비스 연결 이름처럼 환경마다 달라지는 값을 코드 수정 없이 바꿀 수 있게 해 준다. 단, 비밀 값은 공개 저장소나 화면 캡처에 노출되면 안 되므로 이름과 존재 여부만 확인하고 실제 값은 출력하지 않는 습관이 필요하다. AI 코딩에서는 환경 변수가 없어서 생기는 실패와 코드 버그를 구분해야 한다. 로컬, 미리보기, 프로덕션 각각에서 어떤 키가 필요한지 문서화하고 값 자체는 안전한 설정 저장소에 둔다.

버전 관리·배포

롤백

영어 표기 Rollback

문제가 생긴 변경을 이전에 안정적으로 동작하던 상태로 되돌리는 조치이다. 롤백은 실패를 인정하는 것이 아니라 서비스 피해를 빠르게 줄이는 운영 기술이다. AI 에이전트가 여러 파일을 한꺼번에 수정했을 때는 어떤 변경이 문제인지 찾는 동안 사용자가 계속 장애를 겪을 수 있으므로, Git 이력과 배포 플랫폼의 이전 버전을 이용해 먼저 안정 상태로 되돌리는 판단이 중요하다.

데이터베이스·데이터

ORM

영어 표기 ORM (Object-Relational Mapping)

데이터베이스 테이블을 프로그래밍 언어의 객체(Object)로 매핑(Mapping)하여, SQL 쿼리를 직접 작성하지 않고 프로그래밍 언어의 메서드로 데이터베이스를 조작할 수 있게 하는 기술이다. 비유하면, ORM은 '영어와 한국어 사이의 통역사'처럼, 애플리케이션 코드와 SQL 사이를 번역해주는 중간 계층이다. 바이브 코딩에서 AI가 DB 코드를 생성할 때 ORM을 사용하면 타입 안전한 쿼리가 보장되므로 환각(Hallucination)으로 인한 잘못된 SQL 생성 위험이 크게 줄어든다. Prisma(스키마 우선 접근, 자동 타입 생성), Drizzle(TypeScript 네이티브, 경량), Sequelize(성숙한 Node.js ORM), TypeORM(데코레이터 기반) 등이 대표적이다. AI에게 'Prisma로 사용자 스키마 만들어줘'라고 하면 schema.prisma 파일(모델 정의)과 마이그레이션 코드(DB 구조 변경)를 생성한다. Prisma와 Drizzle은 TypeScript와의 통합이 뛰어나 AI가 타입 오류 없는 DB 코드를 생성하는 데 특히 유리하다.