Schon eine passende Backup-Strategie für Matomo? Nein? Nicht so schlimm, in den folgenden Absätzen stelle ich dir mein kürzlich veröffentlichtes Backup Script für Matomo vor.
Du kannst Abends nicht mit gutem Gewissen einschlafen, da du kein aktuelles Backup deiner Matomo Installation besitzt? Jedem dem es so oder so ähnlich geht, sei gesagt, in diesem Artikel gibt es die richtige Medizin.
Wo finde ich das Script?
Die Aktuelle Version findest du immer auf GitHub. Der folgende Link bringt dich direkt zu dem aktuellen Release:
Wenn Du schon mal da bist, freue ich mich natürlich wenn du ein Sternchen da lassen würdest. Wirklich!
Was wird benötigt?
Wenn du das Script nutzen möchtest, sollte dein Hoster folgende Dinge bereitstellen:
- SSH oder SFTP Zugriff (Bieten mittlerweile die meisten Shared Hoster an)
- Kein ROOT (Damit ist dieses Script mit Shared Hostings kompatibel)
Ein sicherer Ort für Deine Backups
Jetzt hast du sicherlich bereits das Script auf Deinem Server und willst starten. Klar, dass machen wir gleich, aber vorher noch eine kurze Sicherheitseinweisung.
Damit das Script überhaupt ein Backup erstellen kann, konfigurierst du in den folgenden Absätzen die Konfiguration Dateien des Scripts. Dort enthalten sind, Zugangsdaten für die Datenbank und weitere kritische Informationen, die es zu schützen gilt. Keine gute Idee diese Dateien und schon gar nicht die Backups in einem öffentlichen Ordner auf dem Server liegen zulassen.
Die Lösung liegt auf der Hand. Man nutzt selbstverständlich einen Ordner außerhalb des öffentlichen Verzeichnisses.
Mein kleines Beispiel geht davon aus, dass sich im Root Verzeichnis der öffentliche Ordner “html” befindet, dort liegt eure Matomo Installation und weitere Projekte. Der “backup” Ordner befindet sich hier auf der selben Ebene wie “html”, ist aber nicht öffentlich zugänglich. Dort entpackst du das Backup Script oder führst ein git clone https://github.com/felix-berlin/matomo-backup-restore.git
aus. So liegt das Script mit den heiklen Zugangsdaten sicher.
├── backups (nicht öffentlicher Ordner)
│└── matomo-backup-restore
├── html (öffentlicher Ordner)
│└── matomo (Deine Matomo Installation)
Das Bash Script konfigurieren
Nachdem du das Script abgelegt hast, geht es nun ans Konfigurieren. Mein Backup Script kommt mit zwei Beispiel Konfigurationsdateien, zu finden im Ordner “config”. Eine für den Datenbank-Zugriff die andere für das Script selbst.
Ich empfehle beide Konfig-Dateien zu duplizieren und anschließend umzubenennen. Dazu löscht du lediglich das “.example” aus dem Dateinamen.
Das ganze hat den Vorteil, dass wenn du ein Update mit git pull
machst, deine bisherigen Konfigs nicht überschrieben werden und auch nicht von git getrackt werden.
Das Script Konfigurieren
In der Hauptkonfigurations-Datei (main.config.sh) muss nicht zwangsläufig alles angepasst werden. Folgende Variablen sind jedoch notwenig:
backupMainDir
= der Ordner wo sich die Backups speichern sollenpathToMatomo
= der Pfad zu Deiner Matomo InstallationmatomoDatabase
= der Name Deiner Matomo Datenbank
Datenbank Konfiguration
Die database.config.cnf Datei ist ein reiner Copy & Paste Job. Alle nötigen Zugangsdaten findest Du im Matomo Ordner unter “config” -> “config.ini.php”.
Hier passiert der eigentliche Zauber
Nun kannst du noch einen Blick auf das eigentliche Script werfen. Ich lasse das mal “unkommentiert” 😉
Wie wird das Script genutzt?
Du schaltest dich mit SSH oder SFTP auf deinen Server auf und navigierst mit cd
in das Verzeichnis wo sich die matomo_backup.sh Datei befindet. Jetzt einfach das Script via ./matomo_backup.sh
starten. Wer sich den Code oberhalb angesehen hat, wird sag: “Hey, was ist mit den optionalen Argumenten!“. Stimmt, es gibt zwei ($1, $2
) optionale Argumente mit denen ihr das Backup-Verzeichnis ($1
) und oder das Matomo-Verzeichnis ($2
) manuell bestimmen könnt. Praktisch oder?
Nun einfach zurücklehnen und den echos zugucken!
Backups automatisieren
Damit du so richtig entspannen kannst, empfehle ich dir diesen ganzen Prozess zu automatisieren.
Das Stichwort lautet Cronjob!
Die unter euch, die ihren Server selbst verwalten wissen mit hoher Wahrscheinlichkeit was nun zu tun ist. All diejenigen, die ein Shared-Hosting oder einen Managed Server mieten, können dies meist über das Admin-Dashboard ihres Anbieters steuern. Das einzige worauf hier geachtet werden sollte ist, dass du das Script mit dem richtigen Interpreter ansprichst. In diesem Fall ist das Bash. Nun noch schnell das für dich geeignete Intervall auswählen und schon gibt es regelmäßig Matomo Backups!
Hat Dir der Beitrag gefallen? Lass uns diskutieren: