MySQL エラー 1290 (HY000): --secure-file-priv オプション
MySQL スクリプトの結果をテキスト ファイルにエクスポートしようとしたときINTO OUTFILE ステートメントを使用すると、--secure-file-priv オプションが原因でエラー 1290 (HY000) が発生する可能性があります。このエラーは、MySQL サーバーが特定のパスに基づいてファイル アクセスを制限するように構成されていることを示します。
解決策
この問題を解決するには、MySQL サーバーを構成する必要があります。結果を書き込みたい特定のパスへのファイル アクセスを許可するには:
Ubuntu 16.04 の場合:
次のコマンドを使用して識別します許可されたファイル書き込みディレクトリ:
mysql> SELECT @@GLOBAL.secure_file_priv;
INTO OUTFILE ステートメント内で許可されたディレクトリを指定します:
mysql> SELECT * FROM train INTO OUTFILE '/var/lib/mysql-files/test.csv' FIELDS TERMINATED BY ',';
For Mac OSX (MAMP 経由でインストールされた MySQL):
secure_file_priv オプションが NULL に設定されているかどうかを確認します:
mysql> SELECT @@GLOBAL.secure_file_priv;
If NULL の場合は、ホーム ディレクトリに .my.cnf ファイルを作成します:
$ vi ~/.my.cnf
次の行をファイルに追加します:
[mysqld_safe] [mysqld] secure_file_priv="/path/to/allowed/directory"
次に、INTO OUTFILE ステートメントで許可されるディレクトリを指定します。
mysql> SELECT * FROM train INTO OUTFILE '/path/to/allowed/directory/test.csv' FIELDS TERMINATED BY ',';
以上がMySQL エラー 1290 (HY000) を解決する方法: --secure-file-priv オプション?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。