5

DBの移行にflywayコマンドラインツールを使用しています。SQL移行をSQL​​ディレクトリに置くと、正常に機能します。ただし、Locationsプロパティをファイルシステムのパスに設定すると、警告やエラーなしで失敗します。

例:flyway.locations=/file-path/

ファイルシステムのパスを指定するにはどうすればよいですか?移行をSQL​​ディレクトリに入れたくありません。

4

3 に答える 3

0

これは現在まだサポートされていません:https ://github.com/flyway/flyway/issues/108

回避策として、使用するディレクトリに/sqlをシンボリックリンクできます。

于 2012-11-29T14:11:11.293 に答える
0

次のように、「migration」ディレクトリへの絶対パスの前に文字列「filesystem:」を付ける必要があります。

String path = "/my/project/sql/migrate/";
migrateRelease("filesystem:" + path);
flyway.setLocations(location);
flyway.migrate();
于 2014-01-30T06:19:29.763 に答える
0

Axelのおかげで、バージョン3.2.1で動作しています。注意が必要なのは、移行ファイルのバージョン番号だけです。これは、schema_versionテーブルのバージョン番号よりも大きくする必要があります。そうしないと、migrateコマンドを実行した後に次の結果になる可能性があります。

Flyway 3.2.1 by Boxfuse

Database: jdbc:mysql://...
Validated 1 migration (execution time 00:00.009s)
Current version of schema `ref_db`: 1
Schema `ref_db` is up to date. No migration necessary.
于 2015-08-28T17:27:07.387 に答える