If your application is using a relational database, you’ll have to deal with regular schema changes and other database-related changes as part of your development and deploys. Flyway is an OSS Java tool that helps to you reliably and automatically execute database migrations to ensure that your database schema is always up-to-date with respect to your application’s expectations.
This presentation will provide a quick introduction to Flyway for those attendees not yet familiar with the tool to then follow up by explaining some more advanced patterns and use cases that Joris developed while using Flyway in different projects. Topics that will be discussed include:
- migration versioning when using maintenance branches;
- versioning and out-of-order migrations when using feature branches;
- dynamically including different migration locations to support e.g. different DBMSs or production data fixes in addition to regular migrations;
- using multiple schema version tables as part of an ongoing monolith to microservices migration;
- periodically squashing migrations to prevent the number of migration files from getting out of hand.
Attendees will leave with a good overview on how they’ll be able to use Flyway in their own projects.