OXID eShop Datensicherung erstellen

OXID eShop Backup erstellen

In diesem Beitrag erklären wir Ihnen ausführlich, wie ein vollumfängliches Backup eines OXID eShops erstellt werden kann. Mit dem Backup ist es möglich, Ihren OXID eShop im Falle eines Crashs komplett wiederherzustellen. Zur Durchführung des Backup wird ein Zugriff auf die Server Kommandozeile vorausgesetzt.

Das Backup besteht aus zwei Komponenten, dem OXID eShop Dateisystem in dem Ihre Bild und Programmdaten abgelegt sind und der OXID eShop Datenbank in der Ihre Produkt- und Kundendaten gespeichert werden.

Beide Komponenten werden benötigt um das OXID eShop Backup vollumfänglich durchzuführen.

OXID eShop Dateisystem Backup erstellen

Um ein Backup des OXID eShop Dateisystems zu erstellen melden Sie sich per SSH auf dem Server an und wechseln Sie auf der Kommandozeile auf die Ebene über dem OXID eShop Installationsverzeichnis. Wenn Ihr OXID eShop beispielsweise in einem Ordner mit dem Namen „public_html“ liegt, wechseln Sie bitte auf die Verzeichnisebene über „public_html“.

Geben Sie anschließend den folgenden Befehl ein, um ein Backup Ihres OXID eShop Dateisystems in einer komprimierten Archivdatei parallel zu Ihrer OXID eShop Installation zu sichern.

tar cfvz [ARCHIV].tar.gz [VERZEICHNIS]

In [ARCHIV].tar.gz befindet sich jetzt ein vollumfängliches Backup Ihres OXID eShop Dateisystems und Sie können die Datei an Ihrer gewünschten Sicherungsstelle verwahren.

Um das erstellte Archiv zu wieder zu entpacken geben Sie bitte den folgenden Befehl ein:

tar xfvz [ARCHIV].tar.gz

OXID eShop Datenbank Backup erstellen

Um ein Backup der OXID eShop Datenbank zu erstellen müssen wir vier Informationen kennen. Wir benötigen den Hostnamen des MySQL Servers, die Bezeichnung der Datenbank, einen Benutzernamen mit dem wir auf die Datenbank Zugriff erhalten und dessen Passwort um uns auf dem MySQL Server anzumelden.

Alle benötigten Informationen erhalten wir in der OXID eShop Datei config.inc.php, welche sich im Installationsverzeichnis des OXID eShop befindet.

Sobald Sie alle Informationen besitzen können Sie das Datenbankbackup mit folgendem Befehl durchführen:

mysql --host=[HOSTNAME] [DATENBANKNAME] -u [BENUTZERNAME] -p -e 'show tables where tables_in_[DATENBANKNAME] not like "oxv\_%"' | grep -v Tables_in | xargs mysqldump --host=[HOSTNAME] [DATENBANKNAME] -u [BENUTZERNAME] -p > [DATEINAME].sql

Sie werden bei Ausführung des Befehls zwei Mal zur Eingabe des Benutzerpasswort aufgefordert. Sobald das Backup abgeschlossen ist befindet sich in Ihrem aktuellen Verzeichnis eine SQL Datei die Ihr OXID eShop Datenbankbackup beinhaltet. Legen Sie die .sql Datei im gleichen Ordner wie Ihr OXID eShop Dateisystem Backup-Archiv ab.

Um die SQL Datei wieder in den Datenbankserver einzuspielen, wechseln Sie in das Verzeichnis in dem sich die SQL Datei befindet und geben Sie folgenden Befehl ein:

mysql --host=[HOSTNAME] [DATENBANKNAME] -u [BENUTZERNAME] -p < [DATEINAME].sql

Sie werden bei Ausführung des Befehls ein Mal zur Eingabe des Benutzerpasswort aufgefordert.

OXID eShop View Tabellen neu erstellen

Das Datenbankbackup wurde absichtlich ohne die von OXID eShop erzeugten Datenbank View-Tabellen erstellt. Diese müssen vor Verwendung der Software neu erstellt werden. Um den Login in den OXID eShop ohne erstellte View Tabellen zu ermöglichen, suchen Sie bitte folgende Zeile in der Datei config.inc.php im OXID eShop Installationsverzeichnis:

$this->blSkipViewUsage = false;

und ändern Sie diese bitte wie folgt ab:

$this->blSkipViewUsage = true;

Sollten Sie die Zeile nicht finden fügen Sie diese bitte ans Ende der Datei hinzu.

Anschließend leeren Sie bitte ausgehend vom OXID eShop Installationsverzeichnis das Verzeichnis /tmp und dessen Unterordner vollständig bis auf die Datei .htaccess.

Loggen Sie sich nun in die OXID eShop Administration ein und navigieren Sie zum Menüpunkt Service und klicken Sie anschließend auf Tools. Die daraufhin geöffnete Seite enthält eine Schaltfläche mit der Bezeichnung Views neu erzeugen. Klicken und Bestätigen Sie die Schaltfläche um die View-Tabellen neu zu erzeugen.

Ändern Sie anschließend wieder die zuvor bearbeitete Zeile der config.inc.php Datei ab:

$this->blSkipViewUsage = true;

wird zu:

$this->blSkipViewUsage = false;

Ihre Datenbank ist jetzt vollständig wiederhergestellt und Sie können den Shop wieder wie gewohnt benutzen.