Beim Versuch, MySQL-Skriptergebnisse in eine Textdatei zu exportieren mit INTO OUTFILE kann der folgende Fehler auftreten:
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
Dieser Fehler tritt auf, weil die Option secure_file_priv des MySQL-Servers das Schreiben auf bestimmte Verzeichnisse einschränkt.
Erlaubtes Schreibverzeichnis identifizieren:
mysql> SELECT @@GLOBAL.secure_file_priv;
In erlaubtes Verzeichnis schreiben:
mysql> SELECT * FROM train INTO OUTFILE '/var/lib/mysql-files/test.csv' FIELDS TERMINATED BY ',';
Zulässiges Schreibverzeichnis identifizieren:
mysql> SELECT @@GLOBAL.secure_file_priv;
NULL-Wert:
Wenn das Ergebnis NULL ist, erstellen Sie eine ~/.my.cnf-Datei:
$ vi ~/.my.cnf [mysqld_safe] [mysqld] secure_file_priv="/Users/russian_spy/"
Nicht-NULL-Wert:
Ändern Sie die Datei /etc/my.cnf:
[mysqld] secure_file_priv="/Users/russian_spy/"
Starten Sie MySQL neu und Überprüfen Sie:
mysql> SELECT @@GLOBAL.secure_file_priv;
Tabelle in CSV-Datei exportieren:
mysql> SELECT * FROM train INTO OUTFILE '/Users/russian_spy/test.csv' FIELDS TERMINATED BY ',';
Das obige ist der detaillierte Inhalt vonWie löse ich das Problem mit dem MySQL-Fehler 1290 (HY000) --secure-file-priv?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!