MySQL-FEHLER 1290 (HY000): Option --secure-file-priv
Beim Versuch, MySQL-Skriptergebnisse in eine Textdatei zu exportieren Wenn Sie die INTO OUTFILE-Anweisung verwenden, kann aufgrund der Option --secure-file-priv ein Fehler 1290 (HY000) auftreten. Dieser Fehler bedeutet, dass der MySQL-Server so konfiguriert wurde, dass der Dateizugriff basierend auf bestimmten Pfaden eingeschränkt wird.
Lösung
Um dieses Problem zu beheben, müssen Sie Ihren MySQL-Server konfigurieren um den Dateizugriff auf einen bestimmten Pfad zu ermöglichen, in den Sie die Ergebnisse schreiben möchten:
Für Ubuntu 16.04:
Verwenden Sie zur Identifizierung den folgenden Befehl das zulässige Dateischreibverzeichnis:
mysql> SELECT @@GLOBAL.secure_file_priv;
Geben Sie das zulässige Verzeichnis in Ihrer INTO OUTFILE-Anweisung an:
mysql> SELECT * FROM train INTO OUTFILE '/var/lib/mysql-files/test.csv' FIELDS TERMINATED BY ',';
Für Mac OSX (MySQL über MAMP installiert):
Überprüfen Sie, ob die Option secure_file_priv auf NULL gesetzt ist:
mysql> SELECT @@GLOBAL.secure_file_priv;
Wenn NULL, erstellen Sie eine .my.cnf-Datei in Ihrem Home-Verzeichnis:
$ vi ~/.my.cnf
Fügen Sie der Datei die folgenden Zeilen hinzu:
[mysqld_safe] [mysqld] secure_file_priv="/path/to/allowed/directory"
Geben Sie nun das zulässige Verzeichnis in Ihrer INTO OUTFILE-Anweisung an:
mysql> SELECT * FROM train INTO OUTFILE '/path/to/allowed/directory/test.csv' FIELDS TERMINATED BY ',';
Das obige ist der detaillierte Inhalt vonSo beheben Sie den MySQL-Fehler 1290 (HY000): Option --secure-file-priv?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!