Did you know? DZone has great portals for Python, Cloud, NoSQL, and HTML5!
DevOps Zone is brought to you in partnership with:

Mitch Pronschinske is the Senior Content Curator (aka. "Lord of the Zones") at DZone. That means he writes and searches for the finest developer content in the land so that you don't have to. He often has hotdogs for lunch, likes to make his own ringtones, enjoys card and board games, and is married to an underwear model. Mitch is a DZone employee and has posted 1708 posts at DZone. You can read more from them at their website. View Full User Profile

Flyway 1.5 Released - An Agile DB Migration Framework for Java

11.11.2011
Email
Views: 4926
  • submit to reddit
The DevOps Zone is presented by DZone with partners including ThoughtWorks Studios and UrbanCode to bring you the most interesting and relevant content on the DevOps movement.  See today's top DevOps content and be sure to check out ThoughtWorks Studio's Continuous Delivery Whitepapers and UrbanCode's Webinars.

If you haven't heard about Flyway, a database migration tool for Java, now's a good time to check it out.  The 1.5 version was just released with support for Ant tasks and server credentials from Maven's settings.xml.  From the Google Code page:

It just works - Refreshingly simple. Migrate from any version (incl. an empty database) to the latest version of the schema.

Automatic migration on startup - Ship migrations together with the application and run them automatically on startup using the API.

Convention Over Configuration - Classpath Scanning to automatically discover Sql and Java migrations

Plain Old Sql - SQL scripts for regular migrations (incl. placeholder replacement). No proprietary XML formats, no lock-in.

No limits - Java classes for advanced migrations

Highly reliable - Safe for cluster environments (Multiple machines can migrate in parallel)

Build tool support - Maven plugin and Ant tasks for migrating manually

Not only for Java - Command-line tool for non-JVM users and environments without Maven

Fail fast - Inconsistent database or failed migration prevents app from starting.

Schema Clean - Drop all tables, views, triggers, ... from a schema without dropping the schema itself


Go check out the introductory diagrams and descriptions here:
 

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

ThoughtWorks Studios and UrbanCode, the sponsors of the DevOps Zone, are champions of the DevOps movement.  Their deployment tooling solutions focus on the entire software development lifecycle, involving all parts of an organization, which helps facilitate a migration to the DevOps philosophy.