| Liquibase | |
|---|---|
| Basisdaten | |
| Hauptentwickler | Nathan Voxland |
| Entwickler | Liquibase |
| Erscheinungsjahr | 2006 |
| Aktuelle Version | 5.0.4 (20. August 2026) |
| Betriebssystem | Cross-platform |
| Programmiersprache | Java |
| Lizenz | Apache License 2.0, Freemium |
| Sonstiges | Repository: github.com/liquibase/liquibase |
| www.liquibase.org | |
Liquibase ist eine datenbankunabhängige Programmbibliothek unter Open-Source-Lizenz zur Nachverfolgung von Datenbankstruktur-Änderungen. Es wurde 2006 zur agilen Softwareentwicklung eingeführt.
Alle Änderungen an der Datenbank werden in Textdateien (XML, YAML, JSON oder SQL) gespeichert und durch eine Kombination aus einem „id“- und „author“-Tag sowie dem Namen der Datei selbst gekennzeichnet. In jeder Datenbank wird eine Liste aller vorgenommenen Änderungen gespeichert, die bei jeder Aktualisierung der Datenbank konsultiert wird, um festzustellen, welche neuen Änderungen vorgenommen werden müssen. Infolgedessen gibt es keine Versionsnummer in der Datenbank, aber dieser Ansatz ermöglicht es, in Umgebungen mit mehreren Entwicklern und Codezweigen zu arbeiten.
Liquibase erstellt automatisch die DatabaseChangeLog Tabelle und die DatabaseChangeLogLock Tabelle, wenn man zum ersten Mal eine ChangeLog Datei ausführt.
Liquibase (einst Datical) ist der größte Mitwirkende am Liquibase-Projekt als auch der Entwickler von Liquibase Enterprise [1] - einem kommerziellen Produkt, das die Kernfunktionalität von Liquibase sowie zusätzliche Funktionen bietet.
Liquibase-Produkte, einschließlich Liquibase Enterprise (früher bekannt als Datical DB), werden von DBAs, Release Managern, DevOps-Teams, Anwendungseigentümern, Architekten und Entwicklern eingesetzt, die am Prozess der Anwendungsfreigabe beteiligt sind. Es verwaltet Datenbankschema-Änderungen zusammen mit dem Anwendungscode auf eine programmatische Art und Weise, die Fehler und Verzögerungen eliminiert und schnelle agile Releases ermöglicht. Die kommerziellen Produkte von Liquibase bauen auf dem Liquibase Data Model Approach auf, um datenstrukturspezifische Inhalte über Anwendungsversionen hinweg zu verwalten, während diese von der Entwicklungs- über die Test- bis zur Produktionsumgebung fortschreiten. Datical zeigt die Auswirkungen von Schema-Änderungen in jeder Umgebung vor der Bereitstellung an, was das Risiko mindert und zu reibungsloseren und schnelleren Anwendungsänderungen führt.
<?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>