2017-03-26 2 views
0

방금 ​​데이터베이스에 새 테이블을 추가하기 위해 file.sql 마이그레이션을 수행했으며 flywayMigrate 명령 sbt flywayMigrate을 실행했습니다. 이제 같은 테이블에 두 개의 열을 추가하지 못한 것을 알았습니다. 다른 마이그레이션을 작성할 수있는 옵션이 있지만 테이블을 만들고 두 개의 열을 추가하기 위해 마이그레이션을 롤백하고 변경할 수있을 때 마이그레이션 수를 늘리고 싶지 않습니다. 몇 가지 마이그레이션을 롤백하고 변경하는 방법을 알려주시고 sbt flywayMigrate을 다시 실행하십시오.Flyway Scala에서 이전을 롤백하는 방법은 무엇입니까?

답변

2

전체 마이그레이션을 반드시 다시 실행하지 않아도됩니다. 플라이 웨이가 메타 데이터 용으로 사용하는 표가 있는데이 표를 schema_version이라고합니다. 마지막으로 적용한 마이그레이션 ID를 설정할 수 있습니다 (IIRC로 설정할 일부 해시가 있지만 일치하지 않으면 오류 메시지에서 해당 해시 값을 계산할 수 있습니다). 그러면 플라이 웨이가 거기에서부터 선택됩니다.

+0

https://flywaydb.org/getstarted/how는 어떻게 작동하는지 자세히 설명합니다. –

0

Flyway FAQ에서 설명한대로 롤백 스크립트는 지원되지 않습니다.

당신은에 가지 옵션이 있습니다 : 백업에서

  • 드롭 데이터베이스를 복원하고
  • 수동으로 마이그레이션을 롤백 및 메타 데이터 테이블에서의 레코드를 제거하는 모든 이주 스크립트를 다시 실행하여 데이터베이스를 다시

  • +0

    수동으로 마이그레이션을 롤백하는 방법은 무엇입니까? –

    +0

    데이터베이스에 연결하고 적절한 DDL을 실행하여 추가 된 테이블/열을 제거하고 변경 한 사항을 되돌립니다. –

    관련 문제