▼ Why ? What ?
이번에 "노졸중" 프로젝트를 진행하면서, "Flyway"라는 데이터베이스 마이그레이션 오픈 소스 툴을 처음 사용해보게 됐다. 사실 현재 프로젝트엔 개발 환경만 존재하고 아직 프로덕션 서버가 존재하지 않기 때문에, 데이터베이스 마이그레이션이 그렇게 필요한 상황은 아니었다! 하지만, 개발을 계속 하다보니 엔티티를 수정할 일이 많았고, 이에 따라서 데이터베이스 스키마나 테이블명이 자주 변경되었다. 일일이 DDL을 써줘도 되는데 아직 사용자도 없고 무엇보다 너무 번거로워서 해당 옵션들을 사용해왔다. 프론트에서 테스트할 때 DB의 데이터가 초기화되면 같은 과정(회원가입, 데이터 등록)을 반복해야 하는 것이 번거로워 보였고, DB 초기화를 하지 않고 엔티티 구조를 쉽게 수정할 방법을 찾아보게 되었다!
"Flyway"는 앞으로도 더 의미있게 사용해볼 수 있을 것 같고, "데이터베이스 마이그레이션"이라는 개념도 꼭 알아둬야 할 것 같아 "Flyway"를 스프링 부트에서 사용하는 과정과 데이터베이스 마이그레이션이 필요한 이유에 대해 정리해봤다. "Flyway"를 통해 스크립트를 배포하고 마이그레이션하는 과정에서 해결하기 위해 시간을 많이 할애했던 문제들도 있었어서 추가로 정리해봤다.
▼ Database Migration - Flyway
[ 노션 정리 링크 ]
데이터베이스 마이그레이션 - Flyway | Notion
Flyway를 이용한 DB Migration
thin-azimuth-2a9.notion.site