14

私は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 権限がありません。

4

2 に答える 2

1

ファイルの所有者グループは mysql です。コマンドを使用してid、そのグループの別のユーザーを見つけて、削除してみてください。ファイルの削除に使用しているユーザー ID には、tmp ディレクトリへの書き込みアクセス権がない可能性があります。

ファイルの内容を切り詰めることはできますか? /tmp/ に results.out ファイルを置きたくない場合にのみ、これを行ってください。

echo " " > /tmp/results.out
于 2012-11-14T08:24:05.137 に答える
0

ファイルを小さくて無害なもので作成したのと同じ方法で、いつでも上書きすることができます。

Unix システムでは、再起動時に /tmp/* をクリアするのが一般的であるため、永久にそこに留まることはありません。

于 2013-01-23T20:37:43.373 に答える