Piwik: „LOAD DATA INFILE“ aktivieren

Piwik hat in seinen (optionalen) Systemvoraussetzungen den Punkt „Datenbankfähigkeiten: LOAD DATA INFILE“ stehen, was bei mir partout nicht verfügbar sein wollte.
Nachdem ich mir den Mechanismus etwas genauer angeschaut hatte, war meine grösste Befürchtung, dass ich Probleme bekomme, weil Datenbank-Server und Webserver in diesem Fall getrennte Systeme (jeweils Debian Wheezy) sind. Das konnte aber schnell zerstreut werden, da der Befehl mit dem Zusatz LOCAL (also: LOAD DATA LOCAL INFILE) genau diesen Umstand berücksichtigt und von Piwik automatisch als Fallback verwendet wird, sobald der erste Versuch scheitert.

Dafür müssen nur ein Paar kleine Konfigurationen vorgenommen werden:

Auf dem System des Datenbank-Servers muss in der Konfigurations-Datei /etc/mysql/my.cnf in dem Block [mysqld] local-infile aktiviert sein:

[mysqld]
local-infile=1

Das gleiche gilt für den Client-Server, also unser Webserver, nur diesmal in dem Block [mysql]:

[mysql]
local-infile=1

Ausserdem muss man aufpassen, dass genügend (Lese?-)Rechte auf dem Verzeichnis bzw den Dateien liegen, die ausgelesen werden sollen. Das war bei meinem Setup gar kein Problem, da PHP als FCGI-Modul geladen wird – und zwar mit den Rechten des jeweiligen System-Users für die jeweilige Webpräsenz.

Ein Test im phpMyAdmin hatte auch gar kein Problem, eine Testdatei einzulesen – einzig Piwik hat sich geweigert und behauptet, dass meine MySQL-Version diesen Befehl nicht unterstützt!

Dafür musste ich die Konfigurations-Datei von Piwik piwik/config/config.ini.php bearbeiten und den MySQL-Adapter auf MYSQLI umstellen:

[database]
adapter=MYSQLI

Jetzt zeigt mir Piwik diesen Punkt mit einem grünen Häkchen als „unterstützt“ an :-)
Ob die Einstellung für meinen Server notwendig war, lässt sich bezweifeln, da diese Performance-Optimierung für sehr grosse Datenmengen vorgesehen ist – was bei mir derzeit nicht wirklich der Fall ist…

Ein Gedanke zu „Piwik: „LOAD DATA INFILE“ aktivieren

  1. Was Sie in dieser Gemeinschaft wirklich wertvoll zu bringen, ich bin sicher, dass es viele neue Beiträge von Ihnen erwartet werden. Groß!

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>