LiquiBase is a DBMS-independent library for tracking, managing, and applying database changes. It is built on a simple premise: all database changes (structure and data) are stored in an XML-based descriptive manner and checked into source control. While there have been many attempts to provide a similar tool, LiquiBase aims to provide a solution that supports merging of changes from multiple developers, works well with code branches, supports a database refactoring IDE/plugin, and more.
| Tags | Database Software Development Documentation Libraries Java Libraries Refactoring |
|---|---|
| Licenses | LGPL |
| Implementation | Java |
Recent releases


Release Notes: "modifySql" support, "includeAll" support, and Sybase Adaptive SQL Anywhere support. Paths in "include" can be relative to the changelog using the "relativeToChangeLog" attribute. "stop" has changed. A runInTransaction attribute for changeSet. Stronger validation in .xsd. Better Derby support. Some bugfixes.


Release Notes: Improvements to preconditions (onFail and onError controls, several new precondition checks, and custom preconditions can be passed parameters). SQLite support. Context checking is now case-insensitive. Specifying a column as autoincrement for a non-autoincrement table does not cause an error. The end delimiter can be specified with SQL changes. Indexes can be created as unique. Required attributes for all changes are checked before execution. Command line migrator return codes are better. There are many more bugfixes.


Release Notes: This release has many new features, including adding a loadData change, support for changelog parameters, preconditions in changeSet tags, exporting data with generateChangeLog, and more.


Release Notes: This release adds Hibernate integration, which allows auto-generation of changeSets based on changes to Hibernate-mapped objects.


Release Notes: This release includes major code refactoring along with several important new features.