Wie überspringe ich eine bestimmte Migration mit Flyway?

8

Ich benutze Flyway mit Gradle, ich habe eine der Migrationen manuell in der Datenbankkonsole ausgeführt, ich möchte flyway ausführen, sage aber, dass eine bestimmte Migrationsversion zwischen allen anderen ignoriert werden soll. Kann das gemacht werden?

    
Iman 12.03.2015, 14:09
quelle

2 Antworten

6

Sie müssten es ein wenig hacken, um es zum Laufen zu bringen, also empfehle ich diesen Ansatz nicht, aber es würde in einer Klemme funktionieren.

Ich habe das nur mit Maven getestet, aber ich bin mir ziemlich sicher, dass es auch mit Gradle funktionieren würde.

  1. Migrieren Sie bis zur Version vor der Version, die Sie manuell angewendet haben

    %Vor%
  2. Fügen Sie eine Zeile für das von Ihnen angewendete Skript ein

    %Vor%
  3. Repariere die schema_version Prüfsumme

    %Vor%
  4. Übernehmen Sie die anderen Migrationen

    %Vor%

Die zwei -D -Eigenschaften sind dort möglicherweise nicht notwendig, abhängig davon, ob Sie insert richtig gesetzt haben oder nicht. Flyway kann beispielsweise mit Ihrer Skriptbeschreibung nicht einverstanden sein, selbst wenn die Prüfsumme jetzt korrekt ist.

    
pards 12.08.2016, 18:39
quelle
0

Nicht empfohlen Aber wenn Sie immer noch wollen:

1) Führen Sie flywayMigrate aus, lassen Sie die Migration fehlschlagen.
2) Aktualisieren Sie manuell die Flyway-Meta-Tabelle (Erfolgsspalte) für die jeweilige Version der Migration.
3) Führen Sie flywayMigrate erneut aus.
4) Fertig, Flyway startet jetzt mit der nächsten Version der Migration.

    
Sagar Ahuja 24.01.2018 11:46
quelle

Tags und Links