Package de.svws_nrw.db.utils.schema
Klasse DBMigrationManager
java.lang.Object
de.svws_nrw.db.utils.schema.DBMigrationManager
Diese Klasse stellt Methoden zur Verfügung, um ein Schild2-Datenbankschema in
ein SVWS-Datenbank-Schema zu übertragen.
-
Methodenübersicht
Modifizierer und TypMethodeBeschreibungprotected static boolean
createNewTargetSchema
(DBConfig tgtConfig, String tgtRootUser, String tgtRootPW, Logger logger) Erstellt ein neues Schema für die Migration.protected static DBSchemaManager
getSourceManager
(DBConfig srcConfig, Logger logger) Erstellt die Verbindung zur Quell-Datenbank.static boolean
migrate
(DBConfig srcConfig, DBConfig tgtConfig, String tgtRootUser, String tgtRootPW, int maxUpdateRevision, boolean devMode, Integer schulNr, Logger logger) Diese Methode führt eine Migration von der durch srcConfig beschriebene Schild2-Datenbank in die durch tgtConfig beschriebene SVWS-Server-Datenbank durch.static boolean
migrateInto
(DBConfig srcConfig, DBConfig tgtConfig, int maxUpdateRevision, boolean devMode, Integer schulNr, Logger logger) Diese Methode führt eine Migration von der durch srcConfig beschriebene Schild2-Datenbank in die durch tgtConfig beschriebene SVWS-Server-Datenbank durch.
-
Methodendetails
-
createNewTargetSchema
protected static boolean createNewTargetSchema(DBConfig tgtConfig, String tgtRootUser, String tgtRootPW, Logger logger) Erstellt ein neues Schema für die Migration. Für das Erstellen werden root-Rechte benötigt.- Parameter:
tgtConfig
- die Datenbank-Konfiguration für den Zugriff auf die SVWS-Server-DatenbanktgtRootUser
- der Benutzername eines Benutzers, der mit den Rechten zum Verwalten der Datenbankschemata ausgestattet ist.tgtRootPW
- das root-Kennwort für den Zugriff auf die Zieldatenbanklogger
- ein Logger, welcher das Erstellen loggt.- Gibt zurück:
- true, falls das Erstellen erfolgreich durchgeführt wurde.
-
getSourceManager
protected static DBSchemaManager getSourceManager(DBConfig srcConfig, Logger logger) throws DBException Erstellt die Verbindung zur Quell-Datenbank.- Parameter:
srcConfig
- die Konfiguration für den Zugriff auf die Quell-Datenbanklogger
- der Logger- Gibt zurück:
- die Manager für den Zugriff auf die Quell-Datenbank
- Löst aus:
DBException
- falls ein Fehler beim Verbindungsaufbau auftritt
-
migrateInto
public static boolean migrateInto(DBConfig srcConfig, DBConfig tgtConfig, int maxUpdateRevision, boolean devMode, Integer schulNr, Logger logger) Diese Methode führt eine Migration von der durch srcConfig beschriebene Schild2-Datenbank in die durch tgtConfig beschriebene SVWS-Server-Datenbank durch. Das Ziel-Schema muss dabei bereits exitistieren.- Parameter:
srcConfig
- die Datenbank-Konfiguration für den Zugriff auf die Schild2-DatenbanktgtConfig
- die Datenbank-Konfiguration für den Zugriff auf die SVWS-Server-DatenbankmaxUpdateRevision
- die Revision, bis zu welcher die Zieldatenbank aktualisiert wirddevMode
- gibt an, ob auch Schema-Revision erlaubt werden, die nur für Entwickler zur Verfügung stehenschulNr
- die Schulnummer, für welche die Daten migriert werden sollen (null, wenn alle Daten gelesen werden sollen).logger
- ein Logger, welcher die Migration loggt.- Gibt zurück:
- true, falls die Migration erfolgreich durchgeführt wurde.
-
migrate
public static boolean migrate(DBConfig srcConfig, DBConfig tgtConfig, String tgtRootUser, String tgtRootPW, int maxUpdateRevision, boolean devMode, Integer schulNr, Logger logger) Diese Methode führt eine Migration von der durch srcConfig beschriebene Schild2-Datenbank in die durch tgtConfig beschriebene SVWS-Server-Datenbank durch.- Parameter:
srcConfig
- die Datenbank-Konfiguration für den Zugriff auf die Schild2-DatenbanktgtConfig
- die Datenbank-Konfiguration für den Zugriff auf die SVWS-Server-DatenbanktgtRootUser
- der Benutzername eines Benutzers, der mit den Rechten zum Verwalten der Datenbankschemata ausgestattet ist.tgtRootPW
- das root-Kennwort für den Zugriff auf die ZieldatenbankmaxUpdateRevision
- die Revision, bis zu welcher die Zieldatenbank aktualisiert wirddevMode
- gibt an, ob auch Schema-Revision erlaubt werden, die nur für Entwickler zur Verfügung stehenschulNr
- die Schulnummer, für welche die Daten migriert werden sollen (null, wenn alle Daten gelesen werden sollen).logger
- ein Logger, welcher die Migration loggt.- Gibt zurück:
- true, falls die Migration erfolgreich durchgeführt wurde.
-