Heim > Datenbank > MySQL-Tutorial > LOAD DATA INFILE Fehlercode 13: Warum kann MySQL nicht auf meine Datei zugreifen?

LOAD DATA INFILE Fehlercode 13: Warum kann MySQL nicht auf meine Datei zugreifen?

Susan Sarandon
Freigeben: 2024-11-03 16:30:03
Original
713 Leute haben es durchsucht

LOAD DATA INFILE Error Code 13: Why Can't MySQL Access My File?

LOAD DATA INFILE-Fehlercode: 13 – Eine technische Komplettlösung

Dieser Artikel zielt darauf ab, eine umfassende Lösung für den MySQL-Fehlercode 13 bereitzustellen. Dies tritt auf, wenn versucht wird, Daten aus einer Datei mit der LOAD DATA INFILE-Anweisung zu laden.

Verstehen des Fehlers

Fehlercode 13 zeigt an, dass MySQL keine Dateistatistiken abrufen kann für die angegebene Datei. In der bereitgestellten Abfrage versucht MySQL, Daten aus der Datei „/httpdocs/.../.../testFile.csv“ zu laden, es tritt jedoch ein Problem auf.

Fehlerbehebung und Lösung

a. Benutzerrechte prüfen

Stellen Sie sicher, dass der Datenbankbenutzer über ausreichende Rechte verfügt, um sowohl auf die Datei als auch auf die Datenbanktabelle zuzugreifen. In diesem Fall wurden dem Benutzer „Benutzername“ alle Berechtigungen für „.“ und „Benutzername_%“ gewährt, was ausreichen sollte.

b. Datei- und Ordnerberechtigungen

Stellen Sie sicher, dass die Datei und der Ordner, der die Datei enthält, über die richtigen Berechtigungen verfügen. Die bereitgestellten Berechtigungen von „777“ (rwxrwxrwx) geben an, dass alle Benutzer über Lese-, Schreib- und Ausführungsberechtigungen verfügen, was ausreichend sein sollte.

c. AppArmor-Interferenz (Ubuntu)

Wenn das Betriebssystem Ubuntu ist, stört die AppArmor-Anwendung möglicherweise den Zugriff von MySQL auf die Datei. Um dieses Problem zu beheben:

  • Bearbeiten Sie die AppArmor-Konfigurationsdatei (/etc/apparmor.d/usr.sbin.mysqld) und fügen Sie die Zeile „/tmp/** rwk“ hinzu, um MySQL Lese- und Schreibzugriff zu gewähren , und Ausführungsberechtigungen für das Verzeichnis /tmp.
  • Laden Sie AppArmor mit dem Befehl „sudo /etc/init.d/apparmor reload“ neu.

Zusätzliche Tipps

  • Stellen Sie sicher, dass der in der Abfrage angegebene Dateipfad korrekt ist und dass die Datei am angegebenen Speicherort vorhanden ist.
  • Überprüfen Sie das Dateiformat und stellen Sie sicher, dass es mit der Importdefinition übereinstimmt in der LOAD DATA INFILE-Anweisung.
  • Stellen Sie sicher, dass die Tabellenstruktur mit dem Format der Daten in der Datei übereinstimmt.

Das obige ist der detaillierte Inhalt vonLOAD DATA INFILE Fehlercode 13: Warum kann MySQL nicht auf meine Datei zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage