Web Development Blog
Contao, Wordpress, PHP, JavaScript, CSS, HTML & Co.
Umzug einer Piwik-Installation

Datum: Dienstag, 28. Januar 2014

Autor: Tobias Scheible

Kommentar(e): 8 Kommentare

Kategorie: PHP, Server

Tags: PHP, Piwik, Server, Umzug

Piwik unterbrechungsfrei umziehen

Möchte man eine Piwik-Installation auf einen neuen Server umziehen, die für mehrere Websites eine Statistik erstellt, sollten dabei natürlich möglichst wenige Besucher „verpasset“ werden. Da ich vor kurzem so einen Fall hatte, habe ich diese Anleitung erstellt, wie ihr Piwik in 6 Schritten quasi unterbrechungsfrei umziehen könnt.

Freie OpenSource Statistik-Software
Piwik 2.0 Benutzeroberfläche
Open Web Analytics Neue Benutzeroberfläche von Piwik 2.0

Piwik ist eine mächtige OpenSource Statistiksoftware, welche Besucher und Seitenaufrufe einer Website erfassen kann. Kürzlich wurde Piwik mit einer neuen Optik und zahlreichen Verbesserungen auf die Version 2.0 aktualisiert. Zieht man Piwik komplett mit einer Domain auf einen neunen Server, ist die Aktualisierung der DNS-Einstellungen meist ein Problem. Denn diese werden an verschiedenen Stellen (z.B. ISP, Router, Betriebssystem) zwischengespeichert und meist erst nach mehreren Stunden aktualisiert. In dieser Zeit landen die Besucher, wenn die DNS-Einstellungen zwischengespeichert sind, auf dem alten Server und die anderen Besucher auf dem neuen. Was bedeutet, dass bis zu 24 Stunden die Zahlen von Piwik nicht korrekt sind.

Um dies zu vermeiden, ziehe ich Piwik auf eine neue Subdomain um und richte eine Weiterleitung im Ordner der alten Installation ein. Das hat den Vorteil, dass die Unterbrechung sehr gering ist, da der Umzug unabhängig von den DNS-Einstellungen ist und der Piwik-Tracking-Code nicht überall angepasst werden muss. Nachdem die ursprüngliche Domain umgezogen ist, kann dann der ursprüngliche Pfad auch wieder verwendet werden.

Wie immer gilt für solche Anleitungen, dass vorher immer ein Backup erstellt werden sollte und die Schritte nur durchgeführt werden sollten, wenn ihr das notwendige Know-how habt und somit versteht, was ihr verändert. Die verschiedenen Angaben und Befehle können sich natürlich je nach System und Installation unterscheiden. In meinem Beispiel liegt Piwik auf dem alten Server unter example.com/piwik und wird auf dem neuen Server unter piwik.exmaple.com eingerichtet.

1. Piwik-Daten vom alten auf den neuen Server kopieren

Einfach den kompletten Piwik-Ordner per (S)FTP herunterladen und in das Subdomain-Verzeichnis auf den neuen Server kopieren. Wer mehr Erfahrung hat, kopiert per SSH mit SCP die Daten direkt von Server zu Server.

2. Datenbank auf dem neuen Server anlegen

Als Nächstes muss auf dem neuen Server eine neue Datenbank angelegt werden. Dies geschieht bei einem gemieteten Webspace üblicherweise über die Verwaltungsoberfläche euers Anbieters.

3. Anpassen der Piwik-Konfigurationsdatei config.ini.php

Die neue Daten für die Datenbank müssen nun in die Datei „config.php“ im Ordner „config“ eingetragen werden. Piwik hat noch einen Sicherheitsmechanismus und überprüft die Domain, auf die es ausgeführt wird. Stimmt diese nicht mit der Domain in der Konfigurationsdatei überein, erscheint eine Fehlermeldung. Daher muss noch die neue Subdomain piwik.example.com hinzugefügt werden.

host = "SERVER"
username = "BENUTZER"
password = "PASSWORT"
dbname = "DATENBANK"
trusted_hosts[] = "example.com"
trusted_hosts[] = "piwik.exmaple.com"

4. Backup der MySQL-Datenbank auf dem alten Server

Jetzt kommen wir zum eigentlichen Umzug der Tracking-Daten. Dazu muss auf dem alten Server ein Backup der Piwik-Datenbank erstellt und herunter geladen werden. Am einfachsten funktioniert dies über das Tool PHPMyAdmin. Je nach Größe der Datenbank kann dies schon einen Moment dauern. Alternativ kann auch hier per SSH mit MYSQLDUMP das Backup erstell werden:

mysqldump -uBENUTZER –pPASSWORT DATENBANKALT > piwik.sql

und gleich per SCP auf den neuen Server kopiert werden:

scp piwik.sql BENUTZERSERVER@piwik.exmaple.com:/tmp/piwik.sql

5. Einspielen des MySQL-Backups auf den neuen Server

Auf dem neuen Server kann nun mit PHPMyAdmin das herunter geladene Backup in die neue Datenbank importiert werden. Oder wieder per SSH mit MYSQL auf dem neuen Server das kopierte Backup importieren:

mysql -uBENUTZER -pPASSWORT DATENBANKNEU < /tmp/piwik.sql

Nun sollte Piwik auf dem neuen Server funktionieren. Das kann einfach getestet werden, indem ihr euch kurz beim Piwik-Backend anmeldet.

6. Einrichten der Umleitung auf dem alten Server

Zum Schluss muss noch eine Weiterleitung eingerichtet werden, damit der Tracking-Code von der neuen Piwik-Version geladen wird. Geht dazu auf den alten Server in das Piwik Verzeichnis und löscht alle Dateien und Unterordner und fügt eine .htaccess-Datei mit dem folgenden „Mod-Rewrite“ Befehl ein:

RewriteEngine On
RewriteRule ^(.*)$ http://piwik.exmaple.com/$1

Mit diesem Befehl werden alle Anfragen von „example.com/piwik“ zu „piwik.example.com“ umgeleitet. Und somit wird ab diesem Zeitpunkt die Piwik-Installation auf dem neuen Server verwendet.

Fazit Piwik-Umzug

Mit dieser Methode existiert die Unterbrechung nur zwischen dem Zeitpunkt des Datenbank Backups und der Einrichtung der Weiterleitung. Je nach Datenbankgröße und Technik sollten die Unterbrechungen nur zwischen 5 und 10 Minuten liegen. Noch schneller würde es gehen, wenn die Schritte für den Umzug der Datenbank per Script komplett automatisiert werden. Eine andere Alternative wäre der Abgleich der beiden Datenbanken miteinander, um so die entstandenen Einträge während des Umzugs zu ergänzen.

  • Artikel teilen:

Kommentare

Ben

Hi,

hab schon einiges über das Programm gehört, aber ich bin mir ned sicher ob ich die Daten auch für nützlich ersehen werde.

Werd es aufjedenfall mal testen.

Henry

Ich hatte früher auch mal Piwik auf meiner Seite. Allerdings verkraftete dies mein Webspace nicht. So bin ich wieder bei google analytics gelandet. Das schont meinen Webspace und ich muss mich nicht um updates kümmern.

dedicated server Internex

Wenn das beobachtet Objekt nicht allzu groß ist, dann denke ich sind diese 5 – 10 Minuten verkraftbar. Einzeln abgleichen stelle ich mir dann doch sehr aufwendig vor, vor allem wenn in kurzer Zeit viel Traffic entsteht. Gerade bei größeren Projekten. Aber auf alle Fälle bin ich sehr dankbar für die einfach Beschreibung, habe mich in letzter Zeit schon des öfteren gefragt wie ich das am besten und vor allem auch schnell über die Bühne bekomme. Denn wenn man selbst herumspielt, kann es schon mal etwas länger dauern, da ist man für jedes einfache Tutorial sehr dankbar.
MfG

Peter

Danke für den Tipp und die Erklärung. Ist schon ganz gut wenn man das schnell und reibungslos über die Bühne bringt.

Yvonne

Hey,
danke für die erstklassige Anleitung.
So hab selbst ich (bei soetwas tu ich mich eigentlich immer schwer),
das ganze in kurzer Zeit geschafft.
Gut finde ich auch die CodeErklärungen für die ini Datein, das hätte ich allein nie geschafft!
Danke :)

Yvonne

Neue Artikelserie: Optimales Tracking mit Piwik › Web Development Blog

[…] beliebte OpenSource Web-Statistik Tool Piwik mit einer möglichst geringen Unterbrechung auf einen neuen Server umgezogen werden kann und welche Neuerungen die Version 2.0 von Piwik gebracht hat. In dieser Artikelserie […]

Robert

Der Artikel gibt auf jeden Fall Lust sich mit Piwik zu beschäftigen, bisher habe ich wegen des Aufwands und das Reindenken davor gescheut. Danke.

Schreibe einen Kommentar!

Hilfe zum Kommentieren

Um kommentieren zu können, geben sie bitte mindestens ihren Namen und ihre E-Mail-Adresse an. Bitte nutzen Sie die Kommentarfunktion nicht dazu, andere zu beleidigen oder Spam zu verbreiten. Trolle und Spammer sind hier unerwünscht! Unangemessene Kommentare, die zum Beispiel gegen geltendes Recht verstoßen oder eine Gefährdung anderer Besucher darstellen, werden gelöscht oder angepasst.

Name: Ihr Name, der oberhalb des Kommentars steht, gerne auch Ihren echten Namen, das erleichtert die Kommunikation für alle. Sollte ein Spam-Keyword als Name verwendet werden, kann dieses entfernt oder korrigiert werden.

E-Mail: Ihre E-Mail Adresse dient zur Identifizierung weiterer Kommentare und sie haben die Möglichkeit, ein Avatar-Bild zu verwenden. Dazu müssen Sie mit Ihrer E-Mail Adresse bei Gravatar angemeldet sein. Die E-Mail Adresse wird natürlich nicht veröffentlicht und nicht weitergegeben.

Website: Hier können Sie ihren eigenen Blog bzw. ihre eigene Website eintragen, dadurch wird Ihr Name und Ihr Avatar-Bild verlinkt. Werden rein kommerzielle Angebote offensichtlich beworben, setze ich den Link auf nofollow und unangemessene werden einfach entfernt.

Erlaubte HTML-Tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <hr> <big> <small> <sub> <sup> <u>

nach oben
Schatten