Versionierung von Datenbankschemas

IFS-Logo Diese Seite ist ein Teil der IsyFact-Standards. Alle Inhalte der Seite, insbesondere Texte und Grafiken, sind urheberrechtlich geschützt. Alle urheberrechtlichen Nutzungs- und Verwertungsrechte liegen beim Bundesverwaltungsamt.

Creative Commons Namensnennung Die Nutzung ist unter den Lizenzbedingungen der Creative Commons Namensnennung 4.0 International gestattet.

Die Struktur der Daten, die von einer Anwendung dauerhaft gespeichert werden, kann sich im Laufe des Lebenszyklus der Anwendung ändern. Das bedeutet, dass sich neben der Anwendung auch das Datenbankschema ändert. Die Anwendung und das Datenbankschema müssen zueinander passen.

Die Verwaltung von Versionsinformationen für ein Datenbankschema soll sicherstellen, dass die Anwendung und Datenmigrationsskripte erkennen können, ob ein Datenbankschema die erwartete Version hat. Zusätzlich sollen die Datenbankadministratoren nachvollziehen können, welche Änderungen am Datenbankschema bereits erfolgt sind.

Neben dem bisherigen Verfahren zur Versionierung von Datenbankschemas, das auf einer Eigenentwicklung beruht, gibt es auch die Möglichkeit zur Nutzung von Liquibase. Beide Verfahren werden im Baustein JPA/Hibernate im Detail beschrieben.

1. Vorgaben zur Versionierung

Falls es die Anforderungen erfordern, können mehrere Datenbankschemas zusammen versioniert werden. Dabei gibt es zwei mögliche Konstellationen:

  • Schema-übergreifende Versionierung innerhalb derselben Datenbank,

  • Datenbank-übergreifende Versionierung.

Eine Schema-übergreifende Versionierung innerhalb derselben Datenbank ist möglich. Bei der Aktualisierung auf eine aktuellere Version ist folgendes Vorgehen vorgesehen:

  • Aktualisierung der einzelnen Schemas,

  • Ausführung Schema-übergreifender Operationen.

Im Gegensatz zu Schema-übergreifender Versionierung wird von Datenbank-übergreifender Versionierung dringlichst abgeraten.

Nur eine Lösung, Oracle Database Links, bietet im Zusammenspiel mit Oracle-Datenbanken eine generische, transaktionssichere Lösung für dieses Problem an. Allerdings sind Oracle Database Links laut Maßnahme M 4.71 des IT-Grundschutzes (IT-Grundschutz M 4.71) nur unter strengen Auflagen zulässig, die eine Verwendung erheblich erschweren.

Mit dem Wegfall dieser Lösung gibt es aus Sicht der IsyFact keine geeignete Lösung, um Daten zwischen mehreren Schemata auf unterschiedlichen Datenbank-Instanzen zu bearbeiten.

Unabhängig von der Lösung erschweren Datenbank-übergreifende Operationen die Fehlersuche im Falle einer fehlgeschlagenen Installation oder Aktualisierung wesentlich.