HBSO-Shop: Daten sichern

Aus NULLRAFFER
Wechseln zu: Navigation, Suche

Daten sichern

Zu sichernde Dateien

Beim Einspielen von neuen Version (UPDATE) müssen ausser der Datenbank auch die folgenden Dateien gesichert werden: includes/languages/(SPRACHE)/define*.php Im Speziellen vor allem folgende Dateien: * define_company.php * define_agb.php * define_shipping.php * define_payment.php * define_privacy.php * define_returns.php * define_customer_info.php * define_body_footer.php * define_checkout.php * define_checkout_thanks.php Am Besten man sichert alle "define*.php" Dateien


Sicherung auf dem Server

Datenbank sichern

db-sicherung.sh

Im Verzeichnis private liegt die Shell-Datei mit folgendem Inhalt

#! /bin/bash
mysqldump -uDBUSER -pDBPASSWORD --all-databases --add-drop-table --complete-insert | gzip >/var/www/vhosts/website.de/private/backup/$(date +%Y%m%d)_db-shop.sql.gz


DBUSER ist der Benutzername und nicht der Datenbankname !!

In der Plesk-Verwaltungsoberfläche als Beispiel wählt man die Datenbanken aus und erhält eine Liste der installierten Datenbanken (ein Name kann zb web31_db1 sein).

Klickt man auf eine Datenbank, so erhält man eine Liste mit den Datenbank-Benutzern (User), also zb web31_db1_usr1. Dieser Benutzer ist als DBUSER anzugeben.


DBPASSORD ist das zum DBUSER gehörige Passwort und man gibt es direkt nach dem -p an.

Enthält das Passwort Sonderzeichen wie $  % & < > + *, dann muss man unbedingt das Passwort in einfache Anführungszeichen setzen (auf keinen Fall doppelte Anführungszeichen !!)

zB

mysqldump -uweb31_db1_usr1 -p'Pass$wort' --all-databases ...


Cron Job

In Plesk auf der Registerkarte "Websites & Domains" wählen Sie Erweiterte Optionen anzeigen (wenn diese noch nicht eingeblendet sind).

Dort dann Geplante Aufgaben - dann den korrekten Systembenutzer (normalerweise wird nur ein Benutzer angeboten, es sei denn Sie wären Reseller)


Nun können Sie entweder eine neue Aufgabe planen, eine vorhandene Aufgabe bearbeiten (indem Sie auf die Aufgabe an sich klicken) oder eine Aufgabe aktivieren / deaktivieren, indem Sie auf das Ausführungssymbol klicken.


Cronjob-Einstellungen

Sie geben ein, wann die Aufgabe ausgeführt wird.

Dafür geben Sie die Minute, Stunde, den Tag des Monats und den Monat selbst ein, an der die Aufgabe ausgeführt werden soll.

Eine Eingabe von * bedeutet, dass die Aufgabe immer ausgeführt wird.

Beim Befehl müssen Sie den kompletten Pfad eingeben, wo sich die auszuführende Datei befindet, also zB /var/www/vhosts/benutzername/private/save_defines.sh


Wenn Sicherungsdateien laufend erstellt werden, achten Sie darauf diese regelmäßig zu löschen und vorher vom Server herunterzuladen.


Meine Einstellungen

Min	H	DM	M	DW		Befehl
15	4	*	*	2,4,6		/var/www/vhosts/WEBSITE/private/db-sicherung.sh

DM = Tag des Monats

DW = Tag der Woche


Alte Sicherungen löschen

In Plesk wählen Sie auf der Registerkarte Websites & Domains den File Manager

Im Verzeichnis private/backup/ befinden sich die Datensicherungen.

Der Dateiname sieht wie folgt aus:

jjjjmmtt_db-shop.sql.gz

Die letzte Datei in der Liste ist auch die neueste Sicherung.

Laden Sie mindestens eine der letzten Sicherungen lokal auf Ihren PC, dann können Sie die zu löschenden Sicherungen markieren und auf Entfernen (oben links) klicken.

Die Sicherungen werden dann unwiderruflich gelöscht !!

Wichtige Texte sichern

Texte wie Impressum, AGB, Datenschutzerklärung, Widerrufsrecht, etc. werden nicht in der Datenbank abgelegt, sondern direkt als Dateien auf dem Server.

Je nach Sprache befinden sich die Texte zB im Ordner /shop/includes/languages/german (für Deutsch).

Die Dateinamen haben immer die Form definexxxxx.php und sind somit einfach zu sichern.

Wenn Sie Änderungen an den Dateien gemacht haben, so sichern Sie einmal das Verzeichnis /shop/includes/languages komplett mit allen Ordnern und Dateien auf einen lokalen PC

Damit können Sie diese Texte im Notfall wieder herstellen.


save_defines.sh

#!/bin/bash
FOLDER="/var/www/vhosts/webbenutzer/httpdocs/shop/includes/languages/austrian"
if [ ! -d "$FOLDER"/backup ]; then
mkdir "$FOLDER"/backup;
fi
cp "$FOLDER"/define* "$FOLDER"/backup

FOLDER="/var/www/vhosts/webbenutzer/httpdocs/shop/includes/languages/suisse"
if [ ! -d "$FOLDER"/backup ]; then
mkdir "$FOLDER"/backup;
fi
cp "$FOLDER"/define* "$FOLDER"/backup

FOLDER="/var/www/vhosts/webbenutzer/httpdocs/shop/includes/languages/german"
if [ ! -d "$FOLDER"/backup ]; then
mkdir "$FOLDER"/backup;
fi
cp "$FOLDER"/define* "$FOLDER"/backup

FOLDER="/var/www/vhosts/webbenutzer/httpdocs/shop/includes/languages/english"
if [ ! -d "$FOLDER"/backup ]; then
mkdir "$FOLDER"/backup;
fi
cp "$FOLDER"/define* "$FOLDER"/backup

FOLDER="/var/www/vhosts/webbenutzer/httpdocs/shop/includes/languages/french"
if [ ! -d "$FOLDER"/backup ]; then
mkdir "$FOLDER"/backup;
fi
cp "$FOLDER"/define* "$FOLDER"/backup


Cronjob-Einstellungen

Min	H	DM	M	DW		Befehl
15	2	*	*	2,4,6		/var/www/vhosts/WEBSITE/httpdocs/shop/includes/save_defines.sh

DM = Tag des Monats

DW = Tag der Woche


Wir gehen in diesem Fall davon aus, dass der Shop im Verzeichnis /shop der Webseite liegt !!


Kompletten Shop sichern

ACHTUNG

Wenn hier sehr viele Bilder im /images-Verzeichnis vorhanden sind, kann die Sicherung sehr lange dauern und sehr viel Platz auf dem Server in Anspuch nehmen.

Daher schließen wir dieses Verzeichnis mit der Option --exclude /var/www/vhosts/website.de/httpdocs/shop/images aus der Sicherung aus.

Wenn Sie diesen Abschnitt entfernen, dann werden auch die Bilder gesichert.


TIP: Sichern Sie das /images-Verzeichnis einfach manuell (zB mit FileZilla)

shop-sicherung.sh

Im Verzeichnis private liegt die Shell-Datei mit folgendem Inhalt

#! /bin/bash
tar --exclude /var/www/vhosts/website.de/httpdocs/shop/images -cvzf /var/www/vhosts/website.de/private/backup/$(date +%Y%m%d)_shop.tar.gz /var/www/vhosts/website.de/httpdocs/shop

In Plesk auf der Registerkarte "Websites & Domains" wählen Sie Erweiterte Optionen anzeigen (wenn diese noch nicht eingeblendet sind).

Dort dann Geplante Aufgaben - dann den korrekten Systembenutzer (normalerweise wird nur ein Benutzer angeboten, es sei denn Sie wären Reseller)


Nun können Sie entweder eine neue Aufgabe planen, eine vorhandene Aufgabe bearbeiten (indem Sie auf die Aufgabe an sich klicken) oder eine Aufgabe aktivieren / deaktivieren, indem Sie auf das Ausführungssymbol klicken.


Cronjob-Einstellungen

Sie geben ein, wann die Aufgabe ausgeführt wird.

Dafür geben Sie die Minute, Stunde, den Tag des Monats und den Monat selbst ein, an der die Aufgabe ausgeführt werden soll.

Eine Eingabe von * bedeutet, dass die Aufgabe immer ausgeführt wird.

Beim Befehl müssen Sie den kompletten Pfad eingeben, wo sich die auszuführende Datei befindet, also zB /var/www/vhosts/benutzername/private/shop-sichern.sh


Wenn Sicherungsdateien laufend erstellt werden, achten Sie darauf diese regelmäßig zu löschen und vorher vom Server herunterzuladen.


Meine Einstellungen

Min	H	DM	M	DW		Befehl
15	2	*	*	2,4,6		/var/www/vhosts/WEBSITE/private/shop-sicherung.sh

DM = Tag des Monats

DW = Tag der Woche

Alte Sicherungen löschen

Manuelles Löschen

In Plesk wählen Sie auf der Registerkarte Websites & Domains den File Manager

Im Verzeichnis private/backup/ befinden sich die Datensicherungen.

Der Dateiname sieht wie folgt aus:

jjjjmmtt_shop.tar.gz

Die letzte Datei in der Liste ist auch die neueste Sicherung.

Laden Sie mindestens eine der letzten Sicherungen lokal auf Ihren PC, dann können Sie die zu löschenden Sicherungen markieren und auf Entfernen (oben links) klicken.

Die Sicherungen werden dann unwiderruflich gelöscht !!


Script mit Löschbefehl erweitern

Wenn Datensicherungen automatisch gelöscht werden sollen, dann können Sie das in das Script selbst einbauen.

Dies dient dazu, dass nicht unnötig viel Speicherplatz benötigt wird.

Wenn Sie zB alle 2 Tage eine Datensicherung machen und die letzten 3 Datensicherungen aufbewahren wollen, dann fügen Sie folgenden Befehl zu Ihrem Script (ans Ende) dazu

find /var/www/vhosts/WEBSITE/private/backup -ctime +7 -exec rm {} \;

Dies bewirkt, dass alle Dateien, die älter als 7 Tage sind, gelöscht werden.

Den Wert +7 passen Sie an Ihre Bedürfnisse an.

Es sollten mindestens die letzten 3 Sicherungen aufbewahrt werden.