JPA 자동 스키마 관리에서 Flyway 기반 DB 마이그레이션
·
Backend/Trouble Shooting
배경프로젝트 초기에는 개발 속도를 우선시해JPA의 ddl-auto: update와 Java 기반 데이터 초기화 방식을 사용했다.이 방식은 빠른 개발에는 유리했지만,서비스 출시를 고려하면서 다음과 같은 한계를 명확히 인식하게 되었다.스키마 변경이 언제, 왜 발생했는지 추적하기 어려움애플리케이션 재기동 시 DB 상태가 달라질 수 있음개발 환경과 운영 환경의 데이터 경계가 흐려짐이 시점부터 데이터베이스를“프레임워크가 대신 관리해주는 영역”이 아니라“서비스 안정성을 좌우하는 핵심 시스템”으로 보게 되었다.문제 정의겉으로 드러난 문제는 ddl-auto 설정이었지만,본질적인 문제는 다음 질문으로 정리되었다.“DB 스키마 변경에 대한 책임은 어디에 있어야 하는가?”JPA의 자동 스키마 생성에 위임할 것인가아니면 애플..