次を使用して MySQL スクリプトの結果をテキスト ファイルにエクスポートしようとするとINTO OUTFILE を実行すると、次のエラーが発生する場合があります:
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
このエラーは、MySQL サーバーの secure_file_priv オプションが特定のディレクトリへの書き込みを制限しているために発生します。
許可された書き込みディレクトリの特定:
mysql> SELECT @@GLOBAL.secure_file_priv;
許可されたディレクトリへの書き込み:
mysql> SELECT * FROM train INTO OUTFILE '/var/lib/mysql-files/test.csv' FIELDS TERMINATED BY ',';
許可された書き込みディレクトリの特定:
mysql> SELECT @@GLOBAL.secure_file_priv;
NULL 値:
結果が NULL の場合は、~/.my.cnf ファイルを作成します。
$ vi ~/.my.cnf [mysqld_safe] [mysqld] secure_file_priv="/Users/russian_spy/"
NULL 以外の値:
/etc/my.cnf ファイルを変更します:
[mysqld] secure_file_priv="/Users/russian_spy/"
MySQL を再起動しますそして確認します:
mysql> SELECT @@GLOBAL.secure_file_priv;
テーブルを CSV ファイルにエクスポート:
mysql> SELECT * FROM train INTO OUTFILE '/Users/russian_spy/test.csv' FIELDS TERMINATED BY ',';
以上がMySQL エラー 1290 (HY000) --secure-file-priv 問題を解決する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。