MySQL SELECT во внешний файл. Файлы заблокированы

Проблема решена добавлением пользователя в /etc/security/access.conf.

1
06.12.2019, 00:15
1 ответ

Вы столкнулись с этим примечанием из документации MySQL (см.https://dev.mysql.com/doc/refman/8.0/en/select-into.html):

As of MySQL 8.0.17, the umask for file creation is 0640; you must have sufficient access privileges to manipulate the file contents. Prior to MySQL 8.0.17, the umask is 0666 and the file is writable by all users on the server host.

Таким образом, файлы доступны для чтения только той группе, в которой работает MySQL. Вы можете добавить своего пользователя в эту группу, но это может дать доступ за пределами желаемого (, например, прямой доступ к файлам данных базы данных ).

Еще один вариант, если ваша файловая система поддерживает списки ACL (чаще всего )заключается в том, чтобы посмотреть, будет ли ACL по умолчанию переопределять разрешения, установленные MySQL, попробуйте что-то вроде этого (в каталоге, в который записываются дампы.):

sudo setfacl -m 'd:u:«YOUR-USER»:r' /home/tmp

Это устанавливает ACL «по умолчанию» для автоматического добавления ACL к любым файлам, созданным в /home/tmp, позволяя «ВАШЕМУ -ПОЛЬЗОВАТЕЛЮ» читать их. Если вам также нужно написать им, вы должны использовать вместо этого rw.

1
27.01.2020, 23:40

Теги

Похожие вопросы