Wie kann ich mit SELECT INTO OUTFILE MySQL Errcode 13 umgehen?

Ich versuche, den Inhalt einer Tabelle mit einer MySQL SELECT INTO OUTFILE-Anweisung in eine CSV-Datei zu kopieren. Wenn ich mache

SELECT column1, column2
INTO OUTFILE 'outfile.csv'
FIELDS TERMINATED BY ','
FROM table_name;

outfile.csv wird auf dem Server in demselben Verzeichnis erstellt, in dem sich die Dateien dieser Datenbank befinden.

Allerdings, wenn ich meine Abfrage ändere zu:

SELECT column1, column2
INTO OUTFILE '/data/outfile.csv'
FIELDS TERMINATED BY ','
FROM table_name;

Ich bekomme

ERROR 1 (HY000): Can't create/write to file '/data/outfile.csv' (Errcode: 13)

Errcode 13 ist ein Berechtigungsfehler, aber ich erhalte ihn selbst dann, wenn ich den Besitz von / data in mysql: mysql ändere und ihm 777 Berechtigungen erteile. MySQL wird als Benutzer "mysql" ausgeführt.

Seltsamerweise kann ich die Datei in / tmp erstellen, nur nicht in einem anderen Verzeichnis, das ich ausprobiert habe, auch wenn die Berechtigungen so festgelegt sind, dass Benutzer mysql in das Verzeichnis schreiben kann.

Dies ist MySQL 5.0.75, das unter Ubuntu ausgeführt wird.

Antworten auf die Frage(26)

Ihre Antwort auf die Frage