Heim  >  Artikel  >  Datenbank  >  Wie behebt man den MySQL-Fehler 1290: „Datei kann nicht erstellt/geschrieben werden“ bei Verwendung von INTO OUTFILE?

Wie behebt man den MySQL-Fehler 1290: „Datei kann nicht erstellt/geschrieben werden“ bei Verwendung von INTO OUTFILE?

Susan Sarandon
Susan SarandonOriginal
2024-11-04 20:05:02459Durchsuche

How to Fix MySQL Error 1290:

MySQL Secure File Privileges: Fehler 1290 beim Schreiben in Dateien beheben

MySQLs Option --secure-file-priv schränkt die Ausführung von Anweisungen ein die in Dateien schreiben. Dieser Fehler tritt auf, wenn versucht wird, Abfrageergebnisse mithilfe der INTO OUTFILE-Klausel in eine Datei zu schreiben, während diese Option aktiviert ist.

Lösung:

Zulässige Schreibpfade suchen

Überprüfen Sie den Wert der Systemvariablen @@GLOBAL.secure_file_priv, um die Verzeichnisse zu bestimmen, in die MySQL Dateien schreiben darf:

<code class="sql">SELECT @@GLOBAL.secure_file_priv;</code>

Ubuntu 16.04: Schreiben Sie in den angegebenen Pfad, zum Beispiel:

<code class="sql">SELECT * FROM train INTO OUTFILE '/var/lib/mysql-files/test.csv' FIELDS TERMINATED BY ',';</code>

Mac OSX (MAMP):

.my.cnf-Datei erstellen:

  1. Öffnen Sie ~/.my.cnf.
  2. Fügen Sie die Zeile secure_file_priv="/Users/[Ihr Benutzername]/" im Abschnitt [mysqld] hinzu.

Sichere Dateiberechtigungen deaktivieren (nicht empfohlen):

Setzen Sie die Systemvariable @@GLOBAL.secure_file_priv auf NULL:

<code class="sql">SET GLOBAL secure_file_priv=NULL;</code>

Hinweis: Bei dieser Methode besteht die Gefahr, dass nicht vertrauenswürdiger Code an beliebige Stellen auf dem Server schreibt. Es sollte nur als vorübergehende Maßnahme eingesetzt werden.

Das obige ist der detaillierte Inhalt vonWie behebt man den MySQL-Fehler 1290: „Datei kann nicht erstellt/geschrieben werden“ bei Verwendung von INTO OUTFILE?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn