Wiederherstellen der Azure App Service MySQL In-App Datenbank

Der Azure App Service bietet die Möglichkeit Backups automatisch durch Azure erstellen zu lassen. Dieses Backup schliesst auch die MySQL In-App Datenbank mit ein, welche bei einer einfachen WordPress-Seite gerne verwendet wird. Doch beim Testen des Wiederherstellens die Überraschung, dass WordPress neu installiert werden muss. Das ist so, weil die Datenbank beim Restore nicht wiederhergestellt wird, sondern nur die gesicherte Filestruktur. Doch dazu später mehr. Folgende Anleitung zeigt, wie du einen Test durchführen kannst, welches Problem auftritt und wie das Wiederherstellen der Azure App Service MySQL In-App Datenbank trotzdem funktioniert.

Deployment Slot zum Wiederherstellen des App Service

In dieser Anleitung wird davon ausgegangen, dass du das Backup des App Service bereits erfolgreich eingerichtet hast.

Hinweis:
Falls dem nicht so ist, so kannst du unter diesem Link nachlesen, wie du ein solches in wenigen Schritten einrichten kannst!


https://docs.microsoft.com/en-us/azure/app-service/manage-backup/

Öffne also den App Service, für welchen du das Backup und das Wiederherstellen prüfen möchtest. Lege dann einen neuen Deployment Slot an, oder verwende einen bereits bestehenden. In diesem Beispiel verwende ich den bereits bestehenden Slot «ygr-tech-blog-Dev». Teile dem Slot anschliessend noch Traffic in Prozent zu, beispielsweise 20.

Wiederherstellen des App Service

Nun stellst du den App Service auf dem vorhin vorbereiteten Deployment Slot wieder her. Navigiere dazu zum Menupunkt Backup und wähle Restore.

Wähle nun das gewünschte Backup im Dropdown, welches du wiederherstellen und testen möchtest. Unter «Restore destionation» ist es nun äusserst wichtig, dass du «New or existing app» wählst. Zudem musst du dich im folgenden Dropdown unbedingt darauf achten, dass du den richtigen Deployment Slot auswählst. Prüfe die Einstellung erneut, um sicherzustellen, dass du nichts überschreibst, was du noch brauchst und daraus ein Datenverlust entsteht! Bei «Ignore Conflicting Hostnames on Restore» wählst du dann «Yes» und startest den Restore.

Sobald die Meldung erscheint, dass Azure die Wiederherstellung erfolgreich durchgeführt hat, öffne die URL des Deployment Slots im Browser deiner Wahl. Du wirst jetzt feststellen, dass du auf «/wp-admin/install.php» weitergeleitet wirst und du WordPress neu installieren musst.

Hier kommt das Wiederherstellen der App Service MySQL In-App Datenbank ins Spiel.

MySQL In-App Datenbank Wiederherstellung prüfen

Zur Überprüfung der MySQL In-App Datenbank wechselst du zunächst zum entsprechenden Deployment Slot, wählst «MySQL In-App» und dann «Manage».

Im neuen Tab bist du nun mit der MySQL In-App Datenbank verbunden und kannst sie Überprüfen. Mit einem Klick auf «localdb» wirst du nun feststellen, dass diese Datenbank komplett leer ist und somit nicht wiederhergestellt wurde.

Behalte dieses Tab offen, denn du wirst es später erneut brauchen. Für das Wiederherstellen der MySQL In-App Datenbank brauchst du nun nämlich noch zusätzlich manuelle Schritte zu befolgen.

Hinweis:
Ein Feedback habe ich bei Microsoft bereits eingereicht, dass das Wiederherstellen der In-App Datenbank als Option zur Verfügung stehen sollte.
Wenn du die Idee unterstützen möchtest, kannst du unter diesem Link abstimmen.

Restore of App Service MySQL In-App Database – Customer Feedback for ACE Community Tooling (azure.com)

Manuelles Wiederherstellen der App Service MySQL In-App Datenbank

Zum manuellen Wiederherstellen der Datenbank brauchst du das entsprechende Backup herunterzuladen. Wechsle dafür zum ursprünglichen Deployment Slot (Produktion) zurück, auf welchem du das Backup konfiguriert hast. Wähle Dann unter «Backups» die gewünschte Sicherung aus lade sie über «Download» auf deinen lokalen Rechner.

Prüfe beim heruntergeladenen ZIP-File, ob dieses ein File namens «LocalMySqlDatabase.sql» enthält. Wenn dem nicht so ist, so hat das Azure Backup deine Datenbank nicht gesichert. Die MySQL In-App Datenbank sollte jedoch im Backup immer automatisch miteingeschlossen sein. Ist das File vorhanden, so extrahiere dieses File aus dem ZIP und fahre weiter.

Als nächstes wirst du das Datenbank-File aus dem Backup manuell importieren. Wechsle dafür zurück ins MySQL Datenbank Tab, selektiere auf der linken Seite die «localdb», klick oben auf «Import» und wähle bei «Choose File» das zuvor extrahierte Datenbank-File. Starte anschliessend den Import der Datenbank.

Nach ein paar wenigen Augenblicken erscheint auch schon die Erfolgsmeldung des Import-Jobs. Öffne nun nochmals die URL des Deployment Slots im Browser deiner Wahl. Du wirst jetzt feststellen, dass du nicht mehr auf «/wp-admin/install.php» weitergeleitet wirst und somit auch keine Neuinstallation von WordPress notwendig ist. Du hast dein Backup und das Wiederherstellen der Azure App Service MySQL In-App Datenbank erfolgreich validiert.

Hinweis:
Ich empfehle diesen Test regelmässig durchzuführen, um die Funktionalität des Backups als auch des Wiederherstellens fortlaufend zu prüfen.

Schlussfolgerung

Das Backup des Azure App Service, sowie dessen Wiederherstellung ist meines Erachtens sehr zuverlässig und einfach. Dass die MySQL In-App Datenbank jeweils automatisch direkt mitgesichert wird, ist sehr gut. Allerdings wäre das Ganze noch hilfreicher, wenn dieses Backup der Datenbank auch beim Restore direkt eingeschlossen werden könnte. So wäre es möglich, sich den zusätzlichen manuellen Aufwand jeweils zu sparen. Ein entsprechendes Feedback habe ich bei Microsoft bereits platziert, siehe hier!

Hinterlassen Sie einen Kommentar

de_CHGerman