воскресенье, 9 января 2011 г.

Создание csv файлов через MySQL

_mysql_exceptions.InternalError: (1, "Can't create/write to file '/home/antony/job/join/result.csv' (Errcode: 13)")
Основной загвоздкой стало, что по умолчанию пользователю MySQL не дано права записи и чтения файлов и урезано право записи в файловую систему. Первое решается через 
GRANT FILE ... для нужного пользователя.
Второе - сложнее в 4 ступени:

  1. Указать директорию с правом на запись для MySQL:  sudo gedit /etc/apparmor.d/usr.sbin.mysqld;
  2. Добавить строку с нужным каталогом: /<path/to/output/directory>/* w,;
  3. Перезапустить MySQLd: sudo service mysql restart;
  4. Сменить права директории, чтобы у пользователя mysql было право записи.
Теперь Мускул может писать файлы в указанную вами директорию.

1 комментарий: