LoginSignup
2
1

More than 5 years have passed since last update.

Flywayを途中から使いたい(コマンドライン版)

Posted at

.sqlファイルベースで管理できるマイグレーションツール Flyway を導入しようとしたときに、既に手動で適用してしまっているファイル達は無視するようにする方法です。

sbt flywayを途中のバージョンから的な のようにMavenやGradleでの設定方法はわかったのですがコマンドラインではわからなかったのでメモ。

ファイル構成

既に以下のような構成だとした場合

/
┣flyway
┃ ┣conf
┃ ┃ ┗flyway.conf
┃ ┗(省略)
┗sql
 ┣tables
 ┃ ┣company.sql
 ┃ ┗user.sql
 ┗views
   ┗company_user.sql

まずはFlywayに適合するように、ファイル名を変更します。

/
┣flyway
┃ ┣conf
┃ ┃ ┗flyway.conf
┃ ┗(省略)
┗sql
 ┣tables
 ┃ ┣V1.0.0__company.sql
 ┃ ┗V1.0.1__user.sql
 ┗views
   ┗V1.0.2__company_user.sql

flyway.conf

flyway.driver=org.postgresql.Driver
flyway.jarDirs=../drivers
flyway.url=jdbc:postgresql://127.0.0.1:5432/postgres
flyway.user=USER
flyway.password=PASSWORD
flyway.locations=filesystem:../sql
flyway.baselineVersion=1.0.2

キーポイントは flyway.baselineVersion です。ここで指定されているバージョンまでは、ベースラインとして変更管理の対象外になります。

実行

./flyway baseline
./flyway migrate
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1