Удаление файла из mysql
Я выполнил запрос в mysql как
select * into outfile "/tmp/results.out" from table_x;
который в свою очередь написал все записи в этой таблице в файл в каталоге /tmp. Файл был создан со следующими разрешениями.
-rw-rw-rw- 1 mysql mysql 6.6K Nov 14 10:14 /tmp/results.out
Я знаю, что удалить этот файл из моего логина невозможно. Но я попытался удалить это из MySQL, но я получил следующее сообщение об ошибке:
mysql> system rm /tmp/results.out
rm: cannot remove `/tmp/results.out': Operation not permitted
PS: У меня нет прав root.
Ответы
Ответ 1
Группа владельцев файлов - mysql. Используйте команду id
, чтобы узнать другого пользователя этой группы и попробуйте удалить ее. Похоже, что идентификатор пользователя, который вы используете для удаления файла, может не иметь права на запись в каталоге tmp.
Можно ли урезать содержимое файла? Пожалуйста, сделайте это, только если вы не хотите, чтобы файл results.out в /tmp/
echo " " > /tmp/results.out
Ответ 2
Вы всегда можете просто перезаписать файл так же, как вы его создали, с чем-то маленьким и безвредным.
В Unix-системах принято часто удалять /tmp/ * при перезагрузке, поэтому он не останется там и навсегда.