У меня есть веб-приложение, которое выполняет запросы к базе данных.Приложение пытается выполнить запрос и отправить результаты в выходной файл.Я подтвердил, что проблема на самом деле связана с отказом в разрешении (ошибка 13), а не с какой-либо другой частью запроса.Упрощенная форма запроса выглядит следующим образом:
SELECT 'anything'
INTO OUTFILE '/var/www/html/sl/filestore/dbadpt_database.tmp'
FROM INFORMATION_SCHEMA.TABLES;
Этот запрос работает нормально, когда я удаляю строку INTO OUTFILE
.Я перепробовал все настройки разрешений для этого каталога, которые я могу придумать.Я даже изменил разрешение на 777 и получил те же результаты.(Да, я знаю, что 777 не является безопасным. Просто сделал это для тестирования) Я попробовал каждую комбинацию владения «root», «apache» и «mysql», которую я мог бы попробовать для этого каталога.Я вставил вышеупомянутый запрос в инструмент командной строки MySQL, и он дал те же результаты.
Мы работаем с CentOS 5.5.Веб-сервер, на котором запущено приложение, - Apache 2. Я не могу создать файл заранее и не могу изменить каталог, в который программа пытается записать.