BackupDB

Aus Contao Community Documentation

Modul zur Sicherung der MySQL-Datenbank und zur Erstellung eines Website-Templates.

Erweiterungs-Übersicht
Name des Entwicklers Hagen Klemp (do_while)
Entwickler Webseite http://www.softleister.de
Version der Erweiterung 1.3.0
Kompatibilität mit Contao Version ab 2.9.x
Kompatibilität mit TYPOlight Version 2.6.0 - 2.8.x
Link zum Extension Repository http://www.contao.org/erweiterungsliste/view/BackupDB.de.html

Forum

Fragen zum BackupDB-Modul werden im Forum beantwortet: Forum - BackupDB-Erweiterung

Installation

Die Installation erfolgt normal über das Extension Repository im Backend der Contao Installation.
Eine manuelle Installation ist möglich, dazu die ZIP Datei vom Extension Repository laden, entpacken und entsprechend übertragen. Bitte auch auf die richtige Übertragung der .htaccess-Dateien achten. Die .htaccess-Dateien in den einzelnen Verzeichnissen, werden zur Absicherung gegen direkten Zugriff aus dem Internet benötigt.


Das Installtool von Contao braucht nicht aufgerufen zu werden, da das Modul keine Datenbankveränderungen vornimmt oder eigene Tabellen anlegt.


Backend-Modul "Backup Datenbank"

Eine Datensicherung der MySQL-Datenbank ist wichtig, wenn ein Störfall aufgetreten ist. Mit der Datensicherung läßt sich die Datenbank komplett wieder neu erstellen. Eine Dateisicherung wird von BackupDB nicht ausgeführt, diese sollte man zusätzlich sichern, um für den Ernstfall gerüstet zu sein.

Es gibt ein paar Punkte, die beachtet werden müssen:

  • BackupDB kann nicht Datenbanken jeder Größe sichern! Erfahrungswerte liegen bei max. 10-12 MByte, das ist aber stark von dem Aufbau der Website, der Serverperformance und der Datenbankanbindung abhängig. Wenn das Backup komplett fertig geworden ist, steht in der letzten Zeile der SQL-Datei "# --- End of Backup ---".
  • Eine Datensicherung kann nicht für den Datentransport in ein anderes Contao- oder TYPOlight-Release (z.B. Update) verwendet werden!
  • Ein Website-Template kann nur in einem gleichen System verwendet werden, d.h. gleiche Contao-Version und gleiche Erweiterungen mit gleichen Versionen. Grund ist, dass die Datenbankstruktur nicht im Website-Template gespeichert ist und so beim Import 100% übereinstimmen muss.

.

Datenbank sichern

Backup starten

Um die komplette Datenbank zu sichern, klickt man im Backend einfach auf den Button "SQL-Backup starten". Daraufhin öffnet sich ein Downloadfenster, wo man das Zielverzeichnis auf dem lokalen System angibt.

.

Website-Template erstellen

Template erstellen

Das Website-Template kann genutzt werden, um über das Installtool eine fertige Umgebung einzurichten. Wichtig ist dabei, dass sowohl Contao, als auch die verwendeten Erweiterungen in den Versionen vorhanden sind, die beim Speichern des Website-Templates vorlagen.

Es werden dabei zwei Dateien erstellt:

  1. die Datenbankdatei *.sql
  2. eine Textdatei, in der die erwarteten Erweiterungen und Versionen stehen

Die Dateien werden normalerweise im /templates-Verzeichnis erstellt. Weiter unten ist erklärt, wie man auch ein anderes Zielverzeichnis einstellen kann.

Neu ab Version 1.3.0 stable:
Bisher wurden im Export nur Contao-Tabellen, die mit tl_ beginnen berücksichtigt. Jetzt besteht die Möglichkeit, im Einstellungen-Menü eine Liste an Datentabellen anzugeben. Es können einzelne Tabellen hinzugefügt werden oder auch nur die Prefixe, wie z.B. cat_ für Catalog-Tabellen.
In diesem Fall gibt man tl_,cat_ an.

Das Website-Template wird normalerweise im Verzeichnis templates gespeichert, ab jetzt kann der Speicherort auch verändert werden, z.B. tl_files/templatefile BackupDB Einstellungen

.

Automatisches Backup

Für ein automatisch ausgeführtes Backup wird zusätzlich die Erweiterung cron benötigt. Wenn die Erweiterung installiert ist, bietet BackupDB an, dort einen cronjob anzulegen. Cron eintragen

Nach einem Klick auf diesen Link ist der Cronjob vorgemerkt, aber noch inaktiv, um dem Anwender die Möglichkeit zu geben, die Einstellungen und Zyklen nach Bedarf einzustellen: Cron inaktiv

Im Menü des Schedulers (cron) kann das AutoBackup aktiviert werden, indem man einfach auf den rote-LED-Icon klickt (wird dann grün) Cron Menü

Im BackupDB-Menü sieht man dann die Anmerkung, dass der Cronjob aktiv ist.

Cron aktiv


Anmerkung:

Der Cron der cron-Erweiterung ist nicht automatisch ein echter Cron. Er wird nur über Aufrufe im Backend gesteuert. Wenn nur selten jemand im Backend arbeitet, kann es sein, dass der Cron auch lange nicht ausgeführt wird. Abhilfe:

  • man kann ein kleines Script in das Seitenlayout einbauen, um auch Trigger aus Frontendaufrufen zu erhalten
  • man kann den CronController mittels echtem Cronjob vom Server aufrufen lassen.

Weitere Infos dazu unter www.contifex.com


.

Experteneinstellungen

Anzahl der AutoBackup-Dateien einstellen

Das Autobackup per cron-Erweiterung verwendet normalerweise 3 Backupdateien, die sich in dem Verzeichnis TL_FILES/AutoBackupDB befinden. Das neueste Backup ist immer in AutoBackupDB-1.sql gespeichert und in -2 und -3 sind die älteren Backups vorhanden.

Wenn einem die letzten 3 Backups nicht ausreichen, läßt sich durch einen Eintrag in der localconfig.php die Anzahl erhöhen, im Beispiel auf 5:

$GLOBALS['BACKUPDB']['AutoBackupCount'] = 5;

Ab Version 1.3.0 stable kann dieser Parameter im Menü "Einstellungen" angegeben werden.

.

Anderen Speicherort für Website-Templates festlegen

Das Website-Template wird normalerweise im Verzeichnis /templates gespeichert, da es auch in diesem Verzeichnis vom Installtool gesucht wird.

Wenn man, aus welchen Gründen auch immer, ein anderes Verzeichnis verwenden möchte, kann das in der localconfig.php eingestellt werden. Das Verzeichnis sollte aber bereits vorhanden sein.

$GLOBALS['BACKUPDB']['WsTemplatePath'] = 'tl_files/myTemplateBackups';

Ab Version 1.3.0 stable kann dieser Parameter im Menü "Einstellungen" angegeben werden.

.

Ansichten
Meine Werkzeuge

Contao Community Documentation

Ich brauch nen Bier, es ist zwar noch nicht nach 4, aber es ist nach Oli.

Yanick Witschi
Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge