Maison >base de données >tutoriel mysql >Comment contourner l'erreur « La commande utilisée n'est pas autorisée avec cette version de MySQL » dans LOAD DATA LOCAL INFILE ?

Comment contourner l'erreur « La commande utilisée n'est pas autorisée avec cette version de MySQL » dans LOAD DATA LOCAL INFILE ?

DDD
DDDoriginal
2024-10-30 11:51:26302parcourir

How to Work Around the

Solution de contournement pour l'erreur "La commande utilisée n'est pas autorisée avec cette version de MySQL" dans LOAD DATA LOCAL INFILE

La commande LOAD DATA LOCAL INFILE fournit un moyen pratique d'importer des données d'un fichier CSV local directement dans une base de données MySQL. Cependant, dans certaines configurations, les utilisateurs peuvent rencontrer l'erreur suivante :

The used command is not allowed with this MySQL version

Cette erreur suggère que la variable serveur local_infile est désactivée, ce qui empêche l'exécution des instructions LOAD DATA LOCAL INFILE.

Pour contourner ce problème sans modifier les paramètres du serveur, suivez les étapes suivantes :

  1. Connectez-vous à MySQL avec l'utilisateur concerné : Si vous rencontrez actuellement l'erreur, essayez de vous connecter au Console MySQL avec le même utilisateur et tente d'exécuter à nouveau la commande LOAD DATA.
  2. Démarrez MySQL avec --local-infile=1 : Si l'erreur persiste, fermez la console et redémarrez MySQL en utilisant la commande suivante, où USER est votre nom d'utilisateur MySQL et DATABASE est la base de données dans laquelle vous souhaitez charger des données :
mysql -u USER -p --local-infile=1 DATABASE
  1. Réessayez la commande LOAD DATA : Après avoir redémarré MySQL avec l'option --local-infile, essayez d'exécuter à nouveau la commande LOAD DATA.

Si cette solution de contournement réussit, vous devrez soit modifier la configuration du serveur pour activer définitivement le serveur local. infile importe ou réinstallez MySQL avec l'option --local-infile.

Remarques supplémentaires :

  • L'utilitaire phpMyAdmin peut utiliser une méthode différente pour importer des fichiers CSV cela n'implique pas LOAD DATA INFILE, ce qui pourrait expliquer pourquoi il semble fonctionner correctement alors que les commandes directes LOAD DATA échouent.
  • Les références fournies dans la réponse font référence aux versions MySQL 5.0 et 5.5, mais la solution a été confirmée pour fonctionner également avec la version 5.5.

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