Autor Thema: Backup & Restore  (Gelesen 2459 mal)

Fabian Seibt

  • Global Moderator
  • Beiträge: 188
Backup & Restore
« am: 11.12.2020 11:22:51 »
Diese Anleitung kann z.B. verwendet werden, um ein Testsystem, mit den aktuellen Daten aus dem Livesystem, zu erstellen.


Weiterhin orientiert sich die Anleitung an MySQL/MariaDB. Bei Verwendung eines anderen DBMS müssten die Befehle u.U. angepasst werden.
Voraussetzung für diese Anleitung ist, das KIX/KIXPro auf dem Zielsystem bereits in der gleichen Version und mit dem gleichen DBMS installiert wurde.


1.) Backup

Um ein Backup aller relevanten Daten sowie der Datenbank einer KIX-Installation zu erstellen, kann das unter <KIX-Home>/scripts/backup.pl ausgelieferte Skript verwendet werden.
/opt/kix/scripts/backup.pl -d /Zielverzeichnis/fuer/das/Backup
Der neu erstellte Backup-Ordner kann anschließend auf den neuen Server kopiert werden.


2.) Wiederherstellung


Da das Wiederherstellungsskript eine leere Datenbank voraussetzt, müssen zunächst die Inhalte der Tabellen, sowie bei KIXPro zusätzlich die VIEWS, der neuen KIX-Installation gelöscht werden.

for TABLE in $(mysql -h <DBHost> -u kix --password=<Password> kix17 --skip-column-names -e 'SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA="kix17"';); do mysql -h <DBHost> -u kix --password=<Password> kix17 -e "SET FOREIGN_KEY_CHECKS=0; DROP TABLE $TABLE; SET FOREIGN_KEY_CHECKS=1;"; donefor VIEW in $(mysql -h <DBHost> -u kix --password=<Password> kix17 --skip-column-names -e 'SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_SCHEMA="kix17"';); do mysql -h <DBHost> -u kix --password=<Password> kix17 -e "DROP VIEW $VIEW"; done

Im nächsten Schritt wird das mit dem neuen KIX ausgelieferte <KIX-Home>/scripts/restore.pl ausgeführt, um die Daten wiederherzustellen.

/opt/kix/scripts/restore.pl -b /Quellpfad/des/Backups -d /opt/kix/

Bei Problemen mit dem restore.pl-Skript können die Schritte auch einzeln selbst vorgenommen werden:
  • Applikationsverzeichnis aus dem Backup entpacken und in KIX-Verzeichnis kopieren (z.B. mittels cp oder mc)
  • Datenbank Backup entpacken und den Dump wieder einspielen (anschließend das Passwort des DB-Users prüfen)
Zum Abschluss der Tätigkeiten, sollte die Konfiguration neu aufgebaut, der Cache geleert und der Webserver durchgestartet werden.

sudo -u <WebserverNutzer> /opt/kix/bin/kix.Console.pl Maint::Cache::Delete
sudo -u <WebserverNutzer> /opt/kix/bin/kix.Console.pl Maint::Config::Rebuild
service apache2 restart

Tags: