This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: "Liquibase" – news · newspapers · books · scholar · JSTOR (November 2014) (Learn how and when to remove this message)
Liquibase
Developer(s)Nathan Voxland
Stable release
4.25.0 / November 13, 2023; 5 months ago (2023-11-13)[1]
Repositorygithub.com/liquibase/liquibase
Written inJava
Operating systemCross-platform
TypeSoftware development
LicenseApache License 2.0, Freemium
Websitewww.liquibase.org

Liquibase is an open-source database-independent library for tracking, managing and applying database schema changes. It was started in 2006 to allow easier tracking of database changes, especially in an agile software development environment.

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:

Commercial version

Liquibase (formerly Datical)[2] is both the largest contributor to the Liquibase project and the developer of Liquibase Enterprise [3] – a commercial product which provides the core Liquibase functionality plus additional features.

Liquibase products, including Liquibase Enterprise (formerly known as Datical DB), are used by DBAs, Release Managers, DevOps teams, Application Owners, Architects, and Developers involved in the Application Release process. It manages Database Schema changes together with application code in a programmatic fashion that eliminates errors and delays and enables rapid Agile releases. Liquibase commercial products build upon the Liquibase Data Model Approach for managing data structure specific content across application versions as they advance from Development to Test to Production environments. Datical previews the impact of Schema changes in any environment before deployment thus mitigating risk and resulting in smoother and faster application changes.

Liquibase developer, Nathan Voxland, is an executive at Liquibase (formerly Datical).[7]

Sample Liquibase changelog file

<?xml version="1.0" encoding="UTF-8"?>

<databaseChangeLog
        xmlns="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>
            <dbms type="oracle"/>
    </preConditions>

    <changeSet id="1" author="author1">
        <createTable tableName="persons">
            <column name="id" type="int" autoIncrement="true">
                <constraints primaryKey="true" nullable="false"/>
            </column>
            <column name="name" type="varchar(50)"/>
        </createTable>
    </changeSet>

    <changeSet id="2" author="author2" context="test">
        <insert tableName="persons">
            <column name="id" value="1"/>
            <column name="name" value="Test1"/>
        </insert>
        <insert tableName="persons">
            <column name="id" value="2"/>
            <column name="name" value="Test2"/>
        </insert>
    </changeSet>
</databaseChangeLog>

Related tools

References

  1. ^ "Liquibase Downloads". liquibase.com. Liquibase. Retrieved 2023-12-06.
  2. ^ "Datical is Now Liquibase; Company Returns to its Open Source Roots with Support from its Community". 19 May 2020.
  3. ^ "Liquibase Enterprise". Liquibase. Retrieved 2020-05-29.
  4. ^ "Database Forecast Tools for Change Management".
  5. ^ "Liquibase Rules". Liquibase. Retrieved 2020-05-29.
  6. ^ "Our partners". Liquibase. Retrieved 2020-05-29.
  7. ^ "Liquibase Leadership". Liquibase. Retrieved 2020-05-29.