ERREUR MySQL 1290 (HY000) : --secure-file-priv Option
Lors de la tentative d'exportation des résultats du script MySQL vers un fichier texte en utilisant l'instruction INTO OUTFILE, vous pouvez rencontrer une erreur 1290 (HY000) en raison de l'option --secure-file-priv. Cette erreur signifie que le serveur MySQL a été configuré pour restreindre l'accès aux fichiers en fonction de chemins spécifiques.
Solution
Pour résoudre ce problème, vous devez configurer votre serveur MySQL pour autoriser l'accès au fichier à un chemin spécifique où vous souhaitez écrire les résultats :
Pour Ubuntu 16.04 :
Utilisez la commande suivante pour identifier le répertoire d'écriture de fichier autorisé :
mysql> SELECT @@GLOBAL.secure_file_priv;
Spécifiez le répertoire autorisé dans votre instruction INTO OUTFILE :
mysql> SELECT * FROM train INTO OUTFILE '/var/lib/mysql-files/test.csv' FIELDS TERMINATED BY ',';
Pour Mac OSX (MySQL installé via MAMP) :
Vérifiez si l'option secure_file_priv est définie sur NULL :
mysql> SELECT @@GLOBAL.secure_file_priv;
Si NULL, créez un fichier .my.cnf dans votre répertoire personnel :
$ vi ~/.my.cnf
Ajoutez les lignes suivantes au fichier :
[mysqld_safe] [mysqld] secure_file_priv="/path/to/allowed/directory"
Maintenant, spécifiez le répertoire autorisé dans votre instruction INTO OUTFILE :
mysql> SELECT * FROM train INTO OUTFILE '/path/to/allowed/directory/test.csv' FIELDS TERMINATED BY ',';
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!