The agile database migration framework for Java
Plain SQL scripts (incl. placeholder replacement). No proprietary XML formats, no lock-in.
All you need is Java 5+ and your Jdbc driver and you're good to go!
Classpath Scanning to automatically discover Sql and Java migrations
Ship migrations together with the application and run them automatically on startup using the API
Inconsistent database or failed migration prevents app from starting.
| Flyway | Liquibase | c5-db-migration | dbdeploy | mybatis | MIGRATEdb | migrate4j | dbmaintain | AutoPatch | |
Migration types |
|||||||||
| Plain Old Sql migrations | 1 | ||||||||
| Java migrations | 1 | ||||||||
| Groovy migrations | |||||||||
| Xml migrations | |||||||||
| DDL abstraction DSL | |||||||||
Execution |
|||||||||
| API | |||||||||
| Maven plugin | |||||||||
| Ant tasks | |||||||||
| Command-line tool | |||||||||
Databases |
|||||||||
| Oracle | |||||||||
| SQL Server | |||||||||
| DB2 | |||||||||
| MySQL | |||||||||
| PostgreSQL | |||||||||
| H2 | |||||||||
| Hsql | |||||||||
| Derby | |||||||||
Sql Parser |
|||||||||
| Oracle PL/SQL | 2 | ||||||||
| SQL Server T-SQL | 2 | ||||||||
| DB2 SQL PL | 2 | ||||||||
| MySQL stored procedures | 2 | 3 | |||||||
| PostgreSQL stored procedures | 2 | ||||||||
Other |
|||||||||
| Auto creation of schema | |||||||||
| Auto creation of metadata table | |||||||||
| Cluster-safe | |||||||||
| Checksum validation | |||||||||
| Placeholder replacement | |||||||||
| Multiple schema support | |||||||||
| Clean existing schema | |||||||||
| Output to SQL file | |||||||||
| Available on Maven Central | |||||||||
| License | Apache v2 | Apache v2 | Apache v2 | BSD | Apache v2 | BSD | LGPL v3 | Apache v2 | Apache |