Fehler aufgetreten: Sichere Dateiberechtigungen des MySQL-Servers schränken die Anweisungsausführung ein
Sie haben den Fehler „Fehlercode: 1290“ festgestellt. Der MySQL-Server wird mit der Option --secure-file-priv ausgeführt, sodass diese Anweisung nicht ausgeführt werden kann“, während versucht wird, eine MySQL-Anweisung auszuführen, die die Verwendung des INTO OUTFILE-Befehls beinhaltet.
Fehlerursache:
Die Option secure-file-priv begrenzt die Verzeichnisse, in die MySQL Dateien schreiben kann, um die Sicherheit zu verbessern. Standardmäßig verhindert diese Option, dass MySQL in externe Verzeichnisse schreibt.
Sofortige Lösung (keine Konfigurationsänderung):
Eine schnelle Problemumgehung zur Behebung dieses Problems besteht darin, es zu identifizieren das Verzeichnis, in das MySQL Dateien schreiben darf:
<code class="sql">mysql> SHOW VARIABLES LIKE "secure_file_priv";</code>
Sobald Sie das zulässige Verzeichnis identifiziert haben, ändern Sie Ihre INTO OUTFILE-Anweisung, um dieses Verzeichnis als Ziel zu verwenden:
<code class="sql">SELECT * FROM xxxx WHERE XXX INTO OUTFILE '/var/lib/mysql-files/report.csv' FIELDS TERMINATED BY '#' ENCLOSED BY '"' LINES TERMINATED BY '\n'</code>
Dauerhafte Lösung (Konfigurationsänderung):
Windows:
Suchen Sie die Gruppe „[mysqld]“ und fügen Sie die Option „secure-file-priv“ hinzu oder ändern Sie sie Geben Sie das zulässige Verzeichnis an. Zum Beispiel:
<code class="ini">[mysqld] secure-file-priv="C:/ProgramData/MySQL/MySQL Server 5.6/Uploads"</code>
Linux:
Suchen Sie die Gruppe „[mysqld]“ und fügen Sie die „sichere Datei“ hinzu oder ändern Sie sie. file-priv“-Option, um das zulässige Verzeichnis anzugeben. Zum Beispiel:
<code class="ini">[mysqld] secure-file-priv="/var/lib/mysql-files/"</code>
Das obige ist der detaillierte Inhalt vonWie behebt man „Fehlercode: 1290. Der MySQL-Server läuft mit der Option --secure-file-priv...'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!