Я пытаюсь сбросить содержимое таблицы в файл csv, используя инструкцию MySQL SELECT INTO OUTFILE. Если я это сделаю:
SELECT column1, column2
INTO OUTFILE 'outfile.csv'
FIELDS TERMINATED BY ','
FROM table_name;
outfile.csv будет создан на сервере в том же каталоге, в котором хранятся файлы базы данных.
Однако, когда я меняю свой запрос на:
SELECT column1, column2
INTO OUTFILE '/data/outfile.csv'
FIELDS TERMINATED BY ','
FROM table_name;
Я получаю:
ERROR 1 (HY000): Can't create/write to file '/data/outfile.csv' (Errcode: 13)
Errcode 13 - ошибка разрешений, но я получаю его, даже если я изменяю право собственности на /data на mysql: mysql и даю ему 777 разрешений. MySQL работает как пользователь "mysql".
Странно я могу создать файл в /tmp, просто не в любом другом каталоге, который я пробовал, даже с установленными разрешениями, чтобы пользовательский mysql мог писать в каталог.
Это MySQL 5.0.75, работающий на Ubuntu.