
私は Linux on x86_64 ((Ubuntu)) の Focal Ver 8.0.26-0ubuntu0.20.04.2 で MYSQL 8 を使用しています。
LOAD DATA INFILE を使用しています...
これは、secure-file-priv 設定に従って /var/lib/mysql-files にファイルがある場合に機能します。ただし、これを機能させるには、スクリプトが /var/lib/mysql にファイルを配置できるように、mysql-files フォルダーにワールド読み取り/書き込み権限を追加する必要がありました。
自動更新によって mysqld が再起動されるまではすべて正常に動作していましたが、その後、mysql-files の権限が 700 に戻り、LOAD DATA が動作しなくなりました。
secure-file-priv を、スクリプトが実行されているユーザー フォルダーの下のフォルダーに変更しようと思いました。
secure-file-priv を新しいフォルダに変更し、mysqld を再起動して secure-file-priv 変数が更新されていることを確認しました。更新されていました。また、フォルダとファイルへのアクセスが secure-file-priv が /var/lib/mysql-files だったときとまったく同じであることを確認しましたが、依然として権限エラー 13 が発生します。
サーバーを再起動しましたが、同じ問題が発生しました。
secure-file-priv を /tmp に変更しようとしましたが、うまくいかず、依然として権限エラー 13 が発生します。
/var/lib/mysql-files を使用した場合にのみ成功します
別のフォルダーを使用できない理由を知っている人はいますか? そのフォルダーがワールド r/w であっても?
ありがとう