Moderne Versionsverwaltung für Datenbanken mit Liquibase

Versionsverwaltung für Source Code ist aus einem ausgereiften Entwicklungsprozess nicht mehr weg zu denken. Genauso unumgänglich ist die Datenbank als Basis für jede Webanwendung. Logische Konsequenz ist die Notwendigkeit einer Versionsverwaltung für Datenbanken. Aber die gibt’s nicht, oder?

Doch – und zwar haufenweise. Wenn man so will, hat fast jedes Entwicklerteam weltweit sein eigenes Verfahren zur Versionsverwaltung von Datenbanken entwickelt. Von Arbeitsanweisungen, über automatisierte Skripts, der Einbindung von Dumps in das bereits bestehende Source Code Verwaltungssystem oder einer beliebigen Kombination aus diesen Lösungsansätzen. Zukunftsträchtige Methodik? Wohl eher nicht…
Aus diesem Grund stellen wir euch heute ein Tool vor, das uns in Sachen Versionsverwaltung von Datenbanken überzeugen konnte.

Liquibase wird seit 2006 fortwährend entwickelt und ist 2010 mit der Version 2.0 erstmalig unter der Apache-2.0-Lizenz erschienen. Java-basiert (mind. Java 1.5) lässt sich Liquibase schnell plattformunabhängig installieren und bedient dank der internen JDBC-Datenbankschnittstelle eine Vielzahl von Datenbanksystemen.

Dreh- und Angelpunkt von Liquibase sind die so genannten Changelog-Dateien, die sich wiederum aus einzelnen Changesets, also einem Set aus an der Datenbank durchzuführenden Änderungen, zusammensetzen. Changesets sind eindeutig über eine Id, dem Namen des Autors und dem Dateinamen der zugehörigen Changelog-Datei gekennzeichnet. Letztere sind entweder XML- oder SQL-basiert, wobei zu Beachten ist, dass die Verwendung von SQL-Syntax teilweise zu manueller Nacharbeitung an den Changesets führen kann und natürlich den SQL-Dialekt des eingesetzten Datenbanksystems bedienen muss. Vorteilhaft ist, dass sich Changelog-Dateien problemlos in bestehende Versionierungssysteme wie z.B. Git oder Subversion integrieren lassen.

Diese Tatsache und eine Vielzahl an weiteren Liquibase-Features, auf die wir hier nicht näher eingehen wollen, führt dazu, dass Liquibase – richtig eingesetzt – maßgeblich zu einem strukturierten und übersichtlichen Entwicklungsprozess beitragen kann und aus unserer Sicht nur zu empfehlen ist.

Sämtliche Informationen und eine (fast vollständig) übersetzte Dokumentation findet ihr unter http://www.liquibase.org/

Viel Spaß beim Ausprobieren!

Hat der Artikel Ihnen gefallen? Dann gerne teilen ...
Share on Facebook0Share on Google+0Tweet about this on TwitterPin on Pinterest0Share on LinkedIn0Email this to someone

Das könnte auch interessant sein...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.