Liquibase

Last updated
Liquibase
Developer(s) Nathan Voxland
Stable release
4.25.0 / November 13, 2023;20 months ago (2023-11-13) [1]
Repository github.com/liquibase/liquibase
Written in Java
Operating system Cross-platform
Type Software development
License Apache License 2.0, Freemium
Website www.liquibase.org

Liquibase is an open-source database-independent library for tracking, managing and applying database schema changes. [2]

Contents

Overview

All changes to the database are stored in text files (XML, YAML, JSON or SQL) and identified by a combination of an "id" and "author" tag as well as the name of the file itself. A list of all applied changes is stored in each database which is consulted on all database updates to determine what new changes need to be applied. As a result, there is no database version number but this approach allows it to work in environments with multiple developers and code branches.

Liquibase automatically creates DatabaseChangeLog Table and DatabaseChangeLogLock Table when you first execute a changeLog File.

Major functionality

The following is a list of major features:

Sample Liquibase changelog file

Note: while this sample is of an XML changelog, liquibase changelogs can be SQL, XML, JSON or YAML. [3]

<?xml version="1.0" encoding="UTF-8"?><databaseChangeLogxmlns="http://www.liquibase.org/xml/ns/dbchangelog/1.3"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog/1.3        http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.3.xsd"><preConditions><dbmstype="oracle"/></preConditions><changeSetid="1"author="author1"><createTabletableName="persons"><columnname="id"type="int"autoIncrement="true"><constraintsprimaryKey="true"nullable="false"/></column><columnname="name"type="varchar(50)"/></createTable></changeSet><changeSetid="2"author="author2"context="test"><inserttableName="persons"><columnname="id"value="1"/><columnname="name"value="Test1"/></insert><inserttableName="persons"><columnname="id"value="2"/><columnname="name"value="Test2"/></insert></changeSet></databaseChangeLog>

Major contributors

Liquibase was originally created and open sourced in 2006 by Nathan Voxland.

In 2012, a company called Datical was founded to provide enterprise support and tooling for Liquibase. Datical developed a commercial product based on Liquibase OSS, tailored for large scale and regulated enterprise environments. The open source project remained freely available under the Apache 2.0 license. In 2020, Datical rebranded as Liquibase, aligning the company name with the open source project and introducing a tiered product model that included Liquibase Community, the open source edition, and Liquibase Pro, an enterprise grade commercial product built on the open source foundation.

While the company offers commercial tools and services, it remains the primary maintainer and contributor to the open source Liquibase project.

References

  1. "Liquibase Downloads". liquibase.com. Liquibase. Retrieved 2023-12-06.
  2. "Using Liquibase". quarkus.io. Retrieved 2025-06-05.
  3. "Changelog file formats". liquibase.org. Retrieved 2025-06-23.