5.5. Warum erhalte ich eine Fehlermeldung, wenn ich LOAD DATA LOCAL INFILE verwende?

Wenn der Fehler "The used command is not allowed with this MySQL version" erscheint, dann ist das deshalb weil man das LOCAL für LOAD DATA erst aktivieren muss (aus Sicherheistgründen, siehe dazu auch http://www.mysql.com/doc/en/LOAD_DATA_LOCAL.html).

Es gibt 2 Möglichkeiten Textdateien mit LOAD DATA einzulesen. Nämlich mit oder ohne LOCAL.

Der Unterschied besteht darin, dass beim Weglassen des LOCAL die Datei auf der Platte des Servers liegen muss. In der Regel wird man das auch so machen. Dann hilft es bereits, wenn man das LOCAL einfach weglässt.

Wenn man nun aber doch eine Datei vom Client-Rechner aus einlesen muss, dann sollte man sich zuallererst sicher sein, dass der MySQL-Server absolut vertrauenswürdig ist. Ein gepatchter Server wäre in der Lage beliebige Dateien vom Client-Rechner zu lesen (die der dortige User auch lesen darf). Außerdem müssen Server und Client mit der configure Option "--with-local-infile" kompiliert werden.