====== Database Change Management ====== {{ :sql-database.jpg}} **Du entwickelst keine Anwendung ohne Versionskontrolle, warum solltest Du Deine Datenbank anders behandeln?** Liquibase ist eine Open Source (LGPL), datenbankunabhängige Bibliothek um Datenbankänderungen zu verfolgen, zu managen und Änderungen anzubringen. Es untersteht einem simplen Grundsatz: //Jede Datenbankänderung (strukturell und datengetrieben) wird XML basiert in ein Versionierungssystem gespeichert.// Viele Lösungsansätze wurden bisher im open source Umfeld probiert, Liquibase enthält eine Lösung, die: * das Mergen verschiedener Entwickler unterstützt * gut mit Code-Branches zusammenarbeitet * nicht datenbankabhängig ist * [[ide:home|ein Datenbank-Refactoring IDE-Plugin enthält]] (kleine [[http://www.liquibase.org/demos/ide_demo_0_6.htm|Demo]]) * sowohl Produktions- als auch Testdatensätze managen kann * in einer Umgebung arbeitet, wo verschiedene Maschinen versuchen eine Datenbank gleichzeitig zu migrieren * das automatische Anwenden von Änderungen, als auch das generieren von SQL Skripts unterstützt * [[manual/rollback|zurückrollen von Änderungen (Rollback)]] unterstützt * in der Lage ist Datenbank "[[manual:diff|diff]]"s und Changelogs zu erstellen * das automatische Generieren von Datenbanken ([[manual:dbdoc|change documentation]]) erlaubt Während wir uns momentan auf einen java basierten Migrator konzentrieren, sind folgende Feature für die Zukunft geplant: * Datenextraktion um Testdatensätze zu erstellen * Unit-Testing Infrastruktur * .Net Unterstützung * [[future|Und mehr]] ====== Mit Liquibase loslegen ====== [[download|Download LiquiBase]], lese unseren [[quickstart|Quick-Start Guide]] und trete der [[community]] bei. ====== Übersicht ====== Ansehen eines (6 minütigen) Videos von LiquiBase ist im Bereich [[training]|Training]] möglich. Dort gibt es auch andere Tutorien und Anleitungen. ~~NOTOC~~