0

flywaytest を使用してアプリケーションをテストしてください。移行スクリプトをインポートした後、ロールバックする方法があれば教えてください。よくわからない場合は、情報を聞いてください。

ありがとう

4

4 に答える 4

5

あなたの質問はあまり明確ではありませんが、失敗した移行をロールバックして再試行したい場合は、次の手順を実行する必要があります。

  1. schema_version テーブルを見ると、失敗したスクリプトが表示されます (状態列 = FAILED)。再度失敗しないように、このスクリプトを修正する必要があります。また、一部のスクリプトが正常に完了した場合、これらの変更を再度実行すると失敗する可能性があるため、これらの変更を手動で元に戻す必要がある場合があります。

  2. 次に、この行をテーブルから削除します
    delete from schema_version where state = 'FAILED';

  3. 次に、現在のバージョンを失敗したスクリプトの前のスクリプトに戻します。これを行うには、CURRENT_VERSION を 1 に設定します
    update schema_version set current_version = 1 where version = 1.XX;

  4. その後、フライウェイの移行を再度実行できます。

于 2013-01-18T11:23:54.323 に答える
1

flywaydb は、移行中に問題が発生した場合のロールバックをサポートしていません。ユーザーができる最善の方法は次のとおりです。

http://flywaydb.org/documentation/maven/repair.html

ただし、データベース内のデータの整合性を自分で確認する必要があります。

チェックポイントをサポートするために作業しているデータベースの場合は、移行する前にチェックポイントを実行するように常にアドバイスしてください。

幸運を

于 2014-10-15T14:09:00.460 に答える
0

フライウェイは、1行のコマンドによるロールバックをサポートしていません。

のようなコマンドmvn flyway:rollbackはありません、あなたができる2つの方法があります(IMO)

  1. @user528827からの回答に従ってください
  2. レールの移行を使用してみてください:)
于 2013-01-19T17:08:56.553 に答える
0

これはFAQで説明されています:

更新: Flyway 5.0 には元に戻すコマンドが付属しています。

于 2013-01-19T10:26:38.290 に答える