Die meisten Wiederherstellungen, die man braucht, sind klein: eine falsch bearbeitete Seite, eine gelöschte Datei, eine von einem falschen Update geleerte Tabelle. Dafür die ganze Website zurückzuspielen wirft jede Bestellung und jeden Kommentar seit der Sicherung weg - meist ein größerer Verlust als der ursprüngliche Fehler.

Eine Datei aus einem Archiv

tar -tzf backup.tar.gz | grep wp-config
tar -xzf backup.tar.gz -C /tmp/restore path/inside/archive/wp-config.php

Entpacken Sie immer erst nach /tmp. Sehen Sie sie an und kopieren Sie sie dann an ihren Platz - direkt über die Website zu entpacken ist der Weg, auf dem aus einer kleinen Wiederherstellung eine große wird.

Eine Tabelle aus einem Dump

sed -n '/-- Table structure for table `wp_posts`/,/-- Table structure for table `wp_postmeta`/p' backup.sql > wp_posts.sql
mysql -u user -p dbname < wp_posts.sql

Ein Dump ist Klartext in Tabellenreihenfolge, der Bereich zwischen einem Tabellenkopf und dem nächsten ist also genau eine Tabelle.

Eine Tabelle wiederherzustellen löscht sie und legt sie neu an. Alles, was seit der Sicherung hineingeschrieben wurde, ist weg - stellen Sie bei einer Tabelle, in die noch geschrieben wird, also in eine KOPIE wieder her und holen Sie sich die Zeilen, die Sie brauchen.
mysql -u user -p dbname_restore < wp_posts.sql
# then
INSERT INTO dbname.wp_posts SELECT * FROM dbname_restore.wp_posts WHERE ID = 123;

Wissen, was in der Sicherung steckt, bevor Sie sie brauchen

tar -tzf backup.tar.gz | head -30
grep -c "CREATE TABLE" backup.sql

Zwei Minuten jetzt, einmal, sparen eine Stunde an dem Tag, an dem etwas kaputt ist - und der Tag, an dem etwas kaputt ist, ist nicht der Tag, um zu erfahren, dass die Uploads nie dabei waren.

Auf EGPHP-Hosting hält EGPNL tägliche Sicherungen vor und stellt eine einzelne Datei oder Datenbank aus dem Panel wieder her, sodass nichts von alledem nötig ist, sofern Sie den Server nicht selbst betreiben.