[Flyway] No migrations found. Are your locations set up correctly?

손시연·2023년 7월 19일
0

depromeet

목록 보기
2/5
post-thumbnail

💥문제

Flyway로 DDL migration을 해야 하는데, migration 정보를 찾지 못하는 문제가 발생한다.

flyway_schema_history는 자동으로 만들어지는데, 그 안에 아무 것도 없다😭

☠️분석

1. 버전 문제

  • spring boot: 3.0.6
  • mysql: 8.0.33
    • SELECT VERSION(); 입력하면 알 수 있음

spring boot 2.7.13 에서도 테스트해 봤는데 동일한 문제가 발생했다.
다른 문제를 확인해 보자!

2. db/migration 파일 경로 문제

stackoverflow를 참고해서 파일 경로 문제라고 추정했다.

  1. 파일에서 우클릭 -> Copy Path/Reference

  2. 파일 경로 보기

파일 경로가 db.migration으로 되어 있다!

intelliJ에서 아래 그림처럼 db.migration으로 폴더를 만들었더니, 이런 불상사가 생긴 것 같다.

보통 코드 짤 때 a1.b1 방식으로 패키지 만들면 a1/b1으로 자동 인식하던데, resource 단이라서 다른지, intelliJ 오류인지는 명확히 모르겠다.

💁‍♀️해결

  1. 디렉토리/패키지/폴더 생성할 때 db 만들고, migration 만들기
  2. db.migration이 아닌지 확인하고, db/migration으로 만들기

생긴 게 아주 똑같다! 사소하지만 파일 구조를 뜯어보기 전까지는 찾기 어려운 문제인 것 같다.

아래 그림처럼 뜨면 성공!!

flyway_schema_history 테이블에 값이 잘 들어가 있다👍

profile
Server Engineer

1개의 댓글

comment-user-thumbnail
2023년 7월 19일

소중한 정보 감사드립니다!

답글 달기