Migration von easydb 3

Diese Seite beschreibt Schritt für Schritt, was Sie tun müssen, um eine easydb 3 in eine easydb 4 zu migrieren.

Zur Vorbereitung.

Upgrade auf die neueste easydb 3 Version

Das Update auf die Version 4 benötigt die neueste Version der easydb 3.
Daher muss diese zuerst aktualisiert werden. Dieser Prozess unterscheidet sich nicht von bisherigen updates.

Vorgehensweise

  1. Überprüfen ob aktuelle Backups vorhanden sind
  2. Erstellen einer Kopie der aktuellen Datenbank
  3. Konfiguration des neuen EAS
  4. Konfiguration der easydb-4 mit der neu erstellten Datenbankkopie (z.B. unter dem Namen easydb_4_migrate)
  5. erstmalige Migration der Datenbank mittels ezadmin
  6. erstmalige Migration der Bilder in den EAS, wiederum mittels ezadmin
    • Dieser Schritt kann bei großen Mengen von Bildern/langsamer Hardware lange dauern (Tage – Wochen)
    • Bis zu inklusive diesem Schritt kann die easydb-3 in vollem Produktionsbetrieb sein
    • Dies dient dazu, alle Bilder neu zu berechnen, ohne die easydb-3 zu blockieren
  7. easydb-3 readonly/shutdown
  8. Erneutes erstellen einer neuen Kopie der Datenbank (z.B. unter dem Namen easydb_4_prod)
  9. Umstellen der 4er Instanz auf die neue Kopie der Datenbank (z.B. easydb_4_prod)
  10. Erneute Migration der Datenbank
  11. Erneute Migration der Bilder. Hierbei werden nur neue/veränderte Bilder berechnet
  12. Deaktivieren der easydb 3 Instanz. Veröffentlichen der easydb 4 (d.h. umlenken der früheren URL)

Die Migration wird zweimal durchgeführt, um die Zeit, in der die easydb-3 read-only gemacht werden muss, zu verringern, da es lange dauern kann, bis alle Bilder berechnet werden. Bei der erneuten Bildmigration in den Schritten 8-11 werden nur veränderte/neue Bilder berechnet.

Schritt 1: Backup

Diese Form der Datenmigration ist nicht destruktiv. Was bedeutet dass die Daten der alten Instanz nicht verändert werden. Da die Migration aber ein manueller Prozess ist, ist das Risiko für einen Fehler vorhanden. Dies ist auch ein guter Zeitpunkt um die bisherigen Backupstrategien zu überprüfen.

Schritt 2: Datenbankkopie

Damit, wie im vorigen Abschnitt angesprochen, die Migration nicht destruktiv vorgehen kann, muss eine Kopie der Datenbank angelegt werden.

Eine Anleitung findet sich im entsprechenden Kapitel.

Schritt 3: Konfiguration des EAS

In der easydb-4 werden Mediendaten komplett durch den Easydb-Asset-Server verwaltet. Diese Architektur erlaubt es, Features wie Clustering und Partitionierung zu unterstützen.

Eine Anleitung für diesen Schritt ist wiederum im entsprechenden Kapitel zu finden. Sollten Sie mehrere easydb Instanzen betreiben, kann der gleiche EAS für alle verwendet werden.

Schritt 4: Konfiguration der easydb 4:

Die wichtigen Konfigurationsparameter, die für diesen Schritt angepasst werden müssen, sind PDO_DATA_DSN und EAS_URL.

Schritt 5: Datenmigration:

In der neu angelegten Kopie liegen nun alle Daten noch genauso wie in der Version 3 vor. Um die Datenbank in das neue Format zu überführen, muss in ezadmin erst eine Basisschema-Migration und dann eine Datenschema-Migration durchgeführt werden. Beide Schritte sind im entsprechenden Abschnitt beschrieben.

Bei einer älteren Instanz der easydb 3 erscheint eventuell noch der Knopf Rename design to old. Dieser Schritt sollte ausgeführt werden.

Schritt 6: Bildermigration:

Dies ist der essentielle Schritt, bei dem alle Mediendaten migriert und berechnet werden. Dies ist auf einer extra Seite erklärt.

Nach diesem Schritt sollte die easydb 4 einsatzfähig sein und kann getestet werden.

Da zu diesem Zeitpunkt nur auf einer Kopie der Datenbank gearbeitet wird, haben Änderungen auf Datenebene in der easydb 4 noch keinen Bestand!

Mittels /etc/init.d/easydb-asset-server status kann der Fortschritt bei der Berechnung der Bilder beobachtet werden.

Schritt 7: Read-Only machen der 3

Alle Änderungen in der 3, die später als dieser Schritt statt finden, werden verloren gehen. Um dies zu verhindern sollte die easydb in den readonly Modus versetzt werden.

Hierfür muss in der Konfigurationsdatei der easydb 3 die folgende Option setzen:

READ_ONLY=1

Schritte 8-11

Diese Schritte entsprechen den Schritten 2, 4, 5, 6 bis auf den Unterschied dass 11 wesentlich schneller als 6 sein sollte.

In easydb-4 ist der Gastzugang ein normaler easydb-Account mit dem Benutzernamen ‘guest’. Der ‘guest’-Nutzer wird bei der Migration ggfs. automatisch angelegt und die zuvor in easydb-3 für ‘Gäste’ eingetragenen Rechtezeilen auf den ‘guest’-Nutzer übertragen. Im Gegensatz zu der easydb-3 ‘Gäste’-Gruppe zählt der ‘guest’-Nutzer in easydb-4 zu den ‘angemeldeten Benutzern’, so dass ggfs. Rechteeinstellungen justiert werden müssen.

Schritt 12: Umschalten 3 -> 4

Nun sollte die Migration abgeschlossen sein.