Mit wp cloneworx-backup restore prüfst Du vor einem Restore, ob er gelingen kann, spielst ein Backup zurück und behältst den Restore oder machst ihn rückgängig. Mit wp cloneworx-backup import nimmst Du ein Backup aus einer Datei in die Liste auf.
WP-CLI fehlt noch? Die Anleitung steht in WP-CLI installieren. Alle Befehle des Plugins nennt Die Befehle im Überblick.
Das gilt für alle Aktionen
- Ein Backup nennst Du mit seinem Job-Namen. Den zeigt
wp cloneworx-backup backup list. In den Beispielen steht dafür<Job>. Zurückspielen lässt sich ein Backup mit dem Statussuccessoderwarnings. - Je Website läuft immer nur ein Job. Läuft schon einer, endet jeder Befehl, der einen Job startet, mit einem Fehler und nennt den laufenden Job.
- Die Ausgaben sind englisch. Die Frist des Rückwegs steht dort in UTC.
- Alle Aktionen außer
restore statusprüfen zuerst den Benutzer: Der Befehl muss als der Benutzer laufen, dem die Ordner des Plugins gehören. Beirestore precheckundimportübergeht--forcedie Prüfung. Beirestore run,keepundundogibt es kein--force: Dateien eines anderen Benutzers könnte die Website danach nicht mehr ändern.
Vor dem Restore prüfen: precheck
restore precheck führt die Vorprüfung aus: neun Punkte, bevor ein Restore etwas schreibt. Die Vorprüfung ändert nichts an der Website. Für die Probe der Rechte legt sie Ordner und Tabellen an und entfernt sie wieder.
| Schalter | Bedeutung | Erlaubte Werte |
|---|---|---|
--target |
Das Ziel, an dem das Plugin das Backup liest. Ohne den Schalter: das erste lokale Ziel, an dem das Backup vollständig liegt, sonst das erste andere. | Kennung eines Ziels |
--roots |
Was zurückgespielt wird. Ohne den Schalter: jede Wurzel des Backups. wp-config wird nie zurückgespielt. |
Wurzeln, durch Komma getrennt, zum Beispiel db,wp-uploads
|
--include-core |
Spielt den WordPress-Kern auch auf einer anderen Website zurück. | ohne Wert |
--include-dropins |
Spielt object-cache.php, advanced-cache.php und db.php auch auf einer anderen Website zurück. |
ohne Wert |
--include-htaccess |
Spielt .htaccess, web.config und .user.ini auch auf einer anderen Website zurück. |
ohne Wert |
--uploads-in-place |
Wählt für die Uploads den Weg ohne Rückweg, wenn der Platz neben dem lebenden Ordner nicht reicht. | ohne Wert |
--force |
Läuft auch als anderer Benutzer. | ohne Wert |
Die drei Schalter mit --include wirken nur, wenn das Backup von einer anderen Website stammt oder seine Herkunft unbekannt ist. Auf derselben Website spielt das Plugin Kern, Drop-ins und .htaccess in der Vorgabe zurück.
# Die Vorprüfung für ein Backup ausführen wp cloneworx-backup restore precheck <Job> # Das Backup an einem bestimmten Ziel lesen, nur zwei Wurzeln wp cloneworx-backup restore precheck <Job> --target=local-1 --roots=db,wp-uploads
Die erste Zeile der Ausgabe nennt das Backup, das Ziel, an dem gelesen wurde, die Wurzeln und die Herkunft: dieselbe Website, eine andere oder unbekannt. Danach folgt je Punkt eine Zeile mit Zustand und Befund.
| Zustand | Bedeutung |
|---|---|
OK |
Der Punkt ist in Ordnung. |
WARN |
Etwas, das Du wissen solltest. Du entscheidest. Eine Warnung sperrt den Restore nie. |
FAIL |
Der Restore kann nicht starten. |
UNKNOWN |
Der Punkt ließ sich nicht feststellen. |
| Punkt in der Ausgabe | In der Oberfläche |
|---|---|
readable |
Backup lesbar und vollständig |
versions |
PHP- und MySQL-Version |
space |
Freier Platz |
permissions |
Schreibrechte an den Zielordnern |
packet |
max_allowed_packet gegen die größte Zeile |
collations |
Kollationen |
fingerprint |
Dieselbe Website |
db_rights |
Datenbank-Rechte (Probe) |
loopback |
Selbstaufruf möglich |
Unter den Punkten steht, was nicht zurückgespielt wird und warum. Zuletzt listet die Ausgabe die Unterschiede zwischen dem Backup und dieser Website: je Zeile der Wert im Backup und der Wert hier. Das Risiko dieser Unterschiede prüfst Du selbst. Hat ein Punkt den Zustand FAIL, endet der Befehl mit einem Fehler. Jeden Punkt erklärt Die Vorprüfung des Restores: jeder Punkt erklärt.
Ein Backup zurückspielen: run
Ein Restore ersetzt den Stand der Website
Das Backup ersetzt den aktuellen Stand der gewählten Wurzeln. Der alte Stand bleibt 7 Tage erhalten; so lange kannst Du den Restore rückgängig machen. Eine Ausnahme sind Uploads, die mit --uploads-in-place an Ort und Stelle ersetzt wurden: Für sie gibt es keinen Rückweg.
restore run spielt die gewählten Wurzeln zurück. Das geschieht so:
- Die Vorprüfung läuft als erste Phase. Ein
FAILbeendet den Job, bevor etwas geschrieben ist. - Das Plugin baut die Dateien neben den lebenden Ordnern auf und importiert die Datenbank in Tabellen neben den lebenden. Die Website läuft dabei weiter.
- Uploads und Dateien im Wurzelordner tauscht das Plugin Datei für Datei, ohne Wartungsmodus.
- Datenbank, Kern, Must-use-Plugins, Plugins, Themes und das übrige
wp-contentschaltet das Plugin im Wartungsmodus von WordPress um. Dieser Schritt läuft im Webserver: Der Befehl gibt ihn über den Selbstaufruf ab und wartet. - Die neue Website bestätigt sich selbst. Bleibt die Bestätigung 60 Sekunden aus, schaltet derselbe Schritt zurück, und die Website läuft wieder im alten Stand.
Kommt der Selbstaufruf nicht binnen 60 Sekunden beim Webserver an, bricht der Befehl den Restore vor dem Umschalten ab. Das Plugin nimmt zurück, was bis dahin getauscht war, und die Website läuft auf ihrem bisherigen Stand weiter. Nur Uploads, die mit --uploads-in-place an Ort und Stelle ersetzt wurden, bleiben ersetzt.
Nie zurückgespielt werden das Plugin selbst mit seinen Ordnern und Tabellen und die wp-config.php. Dateien in den Uploads und im Wurzelordner, die nicht im Backup sind, bleiben liegen. Tabellen dieser Website, die nicht im Backup sind, bleiben stehen; das Ergebnis nennt sie.
| Schalter | Bedeutung | Erlaubte Werte |
|---|---|---|
--target, --roots, --include-core, --include-dropins, --include-htaccess, --uploads-in-place
|
Wie bei restore precheck. |
wie oben |
--remove-extra-uploads |
Verschiebt Uploads, die nicht im Backup sind, in den alten Stand. Mit restore undo kommen diese Uploads zurück. In der Vorgabe bleiben sie liegen. |
ohne Wert |
--accept-damaged |
Spielt auch ein Backup mit beschädigten Einträgen zurück und lässt genau diese Einträge aus. Ohne den Schalter endet der Restore, bevor etwas getauscht ist, und nennt die Zahl der beschädigten Einträge. | ohne Wert |
--without-confirmation |
Schaltet in diesem Prozess um, ohne die Bestätigung der neuen Website. Für Server, auf denen der Selbstaufruf nicht geht. | ohne Wert |
--background |
Der Befehl startet den Restore nur. Die Website treibt ihn selbst weiter. | ohne Wert |
# Das ganze Backup zurückspielen wp cloneworx-backup restore run <Job> # Nur die Datenbank zurückspielen wp cloneworx-backup restore run <Job> --roots=db # Nur Plugins und Themes zurückspielen wp cloneworx-backup restore run <Job> --roots=wp-plugins,wp-themes
Der Befehl schreibt je Schritt eine Zeile mit dem Fortschritt. Während der Webserver umschaltet, meldet der Befehl alle zehn Sekunden, dass er wartet. Am Ende steht das Ergebnis: das Backup und das Ziel, die Wurzeln, die Zahl der geschriebenen Einträge, die Dateien außerhalb des Backups, die Datenbank mit Tabellen und Zeilen, die Dauer des Umschaltens, der Weg der Bestätigung und die Antwort der Startseite. Die letzte Zeile nennt die Zahl der Warnungen und den Zeitpunkt, bis zu dem der alte Stand erhalten bleibt.
Nach einem Restore der Datenbank kann Deine Anmeldung im WP-Admin ungültig sein. Melde Dich dann neu an.
Solange der Rückweg eines Restores offen ist, startet kein neuer Restore. Behalte den offenen Restore zuerst oder mache ihn rückgängig.
Den Stand eines Restores zeigen: status
restore status zeigt den laufenden Restore. Läuft keiner, zeigt der Befehl den Restore, dessen Rückweg offen ist. Mit dem Job-Namen eines Restores zeigt er genau diesen. Die Aktion hat keine Schalter.
# Den laufenden Restore oder den offenen Rückweg zeigen wp cloneworx-backup restore status
Bei einem laufenden Restore nennt die Ausgabe die Phase und den Fortschritt. Bei einem beendeten nennt sie den Status, den Rückweg mit seiner Frist und das Ergebnis wie nach restore run.
Den Restore behalten oder rückgängig machen: keep, undo
| Aktion | Zweck |
|---|---|
restore keep |
Behält den Restore: Das Plugin entfernt den alten Stand, die alten Ordner und die alten Tabellen. Danach gibt es keinen Rückweg mehr. |
restore undo |
Macht den Restore rückgängig: Das Plugin bringt den alten Stand zurück. Uploads, die an Ort und Stelle ersetzt wurden, bleiben, wie der Restore sie geschrieben hat. |
Beide Aktionen nehmen ohne Job-Namen den Restore, dessen Rückweg offen ist. Mit --background startet der Befehl nur, und die Website treibt den Job selbst weiter.
# Den Restore behalten wp cloneworx-backup restore keep # Den Restore rückgängig machen wp cloneworx-backup restore undo
Die Ausgabe nennt, wie viele Einträge entfernt und wie viele Tabellen entfernt oder zurückgestellt wurden. Entscheidest Du nichts, behält das Plugin den Restore nach 7 Tagen von selbst. Mehr dazu: Einen Restore behalten oder rückgängig machen.
Wenn der WP-Admin nicht erreichbar ist
Für einen Restore auf der Kommandozeile brauchst Du keine Anmeldung im WP-Admin und keinen Browser. Du brauchst den Zugang zum Server und WP-CLI. Die Befehle gibt es, solange WP-CLI WordPress mit dem Plugin laden kann.
- Suche das Backup:
wp cloneworx-backup backup list. - Führe die Vorprüfung aus und lies die Zeile
loopback. BeiOKkommt der Selbstaufruf an. BeiWARNkommt er nicht an: Der Restore geht dann nur mit--without-confirmation. BeiUNKNOWNhat das Plugin den Selbstaufruf auf diesem Server noch nicht erprobt. - Starte den Restore mit
restore run. Kommt der Selbstaufruf an, läuft der Restore wie oben beschrieben. - Bricht der Restore ab, weil der Selbstaufruf nicht ankommt, läuft die Website auf ihrem bisherigen Stand weiter. Starte den Restore dann noch einmal, mit
--without-confirmation. - Prüfe die Website. Stimmt etwas nicht, bringt
restore undoden alten Stand zurück.
# Schritt 1: das Backup suchen wp cloneworx-backup backup list # Schritt 2: die Vorprüfung wp cloneworx-backup restore precheck <Job> # Schritt 3: der Restore wp cloneworx-backup restore run <Job> # Schritt 4: in diesem Prozess umschalten wp cloneworx-backup restore run <Job> --without-confirmation # Schritt 5: wenn nötig, den alten Stand zurückholen wp cloneworx-backup restore undo
Ohne Bestätigung prüfst Du selbst
Mit --without-confirmation bestätigt sich die neue Website nicht selbst. Startet sie nicht, schaltet das Plugin nicht von selbst zurück. Der OPcache des Webservers wird nicht geleert: Der Server kann noch eine Zeit lang alten Code ausliefern. Prüfe die Website nach dem Restore selbst.
Ein Backup aus einer Datei importieren: import
import nimmt eine Backup-Datei an, die auf diesem Server liegt: die tar-Datei aus dem Herunterladen eines Backups. Das Plugin liest die Datei in Stücken, prüft jedes Teil gegen seine Prüfsumme und speichert das Backup an dem Ziel, das Du nennst. Danach steht das Backup in der Liste, unter dem Job-Namen des ursprünglichen Backups. Als Datum nennt backup list den Zeitpunkt des Imports.
| Angabe | Bedeutung | Erlaubte Werte |
|---|---|---|
<Datei> |
Die Backup-Datei. Pflicht. Die Angabe steht direkt hinter import. |
Pfad einer tar-Datei auf diesem Server |
--target |
Das Ziel, an dem das Backup gespeichert wird. Pflicht. | Kennung eines benutzbaren Ziels |
--background |
Der Befehl liest die Datei und startet den Import nur. Die Website treibt den Job selbst weiter. | ohne Wert |
--max-per-step |
Beendet jeden Schritt der Prüfung nach so vielen Teilen. Der Schalter dient der Diagnose. | ganze Zahl |
--force |
Läuft auch als anderer Benutzer. | ohne Wert |
# Eine Backup-Datei an das Ziel local-1 importieren wp cloneworx-backup import /tmp/backup.tar --target=local-1
Der Befehl nennt zuerst die gelesene Größe und den Job-Namen des Backups in der Datei, dann den Fortschritt des Imports. Am Ende steht, wann und auf welcher Website das Backup entstand, an welchem Ziel es jetzt liegt, wie viele Teile geprüft wurden und welche Wurzeln es enthält.
Der Befehl endet mit einem Fehler,
- wenn die Datei keine Backup-Datei dieses Plugins ist oder unvollständig ist,
- wenn ein Teil nicht zu seiner Prüfsumme passt: Dann wird nichts gespeichert,
- wenn dasselbe Backup schon an diesem Ziel liegt,
- wenn es in der Liste ein anderes Backup mit demselben Namen gibt,
- wenn im Arbeitsordner der Platz für die Datei fehlt,
- wenn die Datei größer als 32 GiB ist.
Liegt dasselbe Backup bisher nur an einem anderen Ziel, bekommt sein Eintrag in der Liste das neue Ziel dazu.
Ein importiertes Backup bleibt, bis Du es löschst
Ein importiertes Backup trägt den Plan import. Das Plugin löscht es nie automatisch. Für die Warnung vor überfälligen Backups zählt es nicht.