Maison  >  Article  >  base de données  >  Pourquoi est-ce que j'obtiens un « Accès refusé » lorsque j'utilise LOAD DATA INFILE dans MySQL ?

Pourquoi est-ce que j'obtiens un « Accès refusé » lorsque j'utilise LOAD DATA INFILE dans MySQL ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-30 11:33:02659parcourir

Why Am I Getting

Accès refusé pour LOAD DATA INFILE dans MySQL

Dans MySQL, l'utilisation de l'instruction LOAD DATA INFILE peut entraîner une erreur d'accès refusé, telle que comme "#1045 - Accès refusé pour l'utilisateur 'user'@'localhost' (en utilisant le mot de passe : OUI)."

Cette erreur indique généralement que l'utilisateur actuel exécutant la requête ne dispose pas de privilèges suffisants pour charger des données depuis un fichier dans une table. Pour résoudre ce problème, assurez-vous que l'utilisateur dispose des autorisations nécessaires.

En particulier, l'utilisateur doit disposer du privilège FILE. Ce privilège permet aux utilisateurs de lire des fichiers à partir du système de fichiers du serveur. Sans ce privilège, l'utilisateur ne pourra pas accéder au fichier spécifié.

Pour accorder le privilège FILE à un utilisateur, exécutez la requête suivante :

<code class="sql">GRANT FILE ON *.* TO user_name;</code>

Remplacez user_name par le nom d'utilisateur de l'utilisateur à qui vous souhaitez accorder le privilège.

De plus, pensez à ajouter le mot-clé LOCAL à l'instruction LOAD DATA INFILE. Le mot-clé LOCAL demande à MySQL de lire le fichier depuis la machine client plutôt que depuis le système de fichiers du serveur. Cela peut être plus efficace et sécurisé dans certains cas.

Voici un exemple d'instruction modifiée utilisant LOCAL :

<code class="sql">LOAD DATA LOCAL INFILE 'path/to/file.csv' INTO TABLE table_name;</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn