web-dev-qa-db-fra.com

ImportError: Aucun module nommé 'MySQL'

J'ai téléchargé le connecteur/Python pour MySQL avec succès. J'ai utilisé le code suivant dans le shell Python pour tester ma connexion:

import mysql.connector

J'ai reçu le message d'erreur suivant: 

Traceback (most recent call last):
  File "<pyshell#8>", line 1, in <module>
    import mysql.connector
ImportError: No module named 'mysql'

Je n'arrive pas à comprendre pourquoi MySQL n'est pas reconnu.

24
Melanie

Je faisais face au même problème. Mon env details - Python 2.7.11 Pip 9.0.1 CentOS version 5.11 (Final)

Erreur sur l'interpréteur python -

>>> import mysql.connector
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named mysql.connector
>>>

Utilisez pip pour rechercher le module disponible -

$ pip search mysql-connector | grep --color mysql-connector-python



mysql-connector-python-rf (2.2.2)        - MySQL driver written in Python
mysql-connector-python (2.0.4)           - MySQL driver written in Python

Installez le mysql-connector-python-rf -

$ pip install mysql-connector-python-rf

Vérifier

$ python
Python 2.7.11 (default, Apr 26 2016, 13:18:56)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
>>>

Merci =)

33
Rishi

Peut-être simple installer de cli? 

pip install mysql-connector-python-rf

Le nom du paquet diffère du nom de la bibliothèque d'importation

Ou ma variante universelle en code: 

import pip
pip.main(['install','mysql-connector-python-rf'])

C'est mieux - installez les modules nécessaires à l'exécution de l'installation de python (s'il y en a plusieurs)

juste une note, je viens d'installer mysql sur un serveur Ubuntu 16.04. J'ai essayé différentes options dans l'ordre suivant: 

  • en utilisant le paquet du repository Sudo apt-get install python-mysqldb: A été installé correctement, mais malheureusement, python a retourné ImportError: No module named 'mysql'
  • en utilisant le paquet ubuntu de Mysql: wget http://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python_2.1.4-1ubuntu16.04_all.deb. Installé correctement avec Sudo dpckg -i package_name, mais python a renvoyé la même erreur. 
  • utiliser tar.gz, installer avec python, a bien fonctionné.
    • wget http://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python-2.1.6.tar.gz (utilisé 2.1.4 à cette époque)
    • tar -xf mysql-connector-python-2.1.6.tar.gz
    • cd mysql-connector-python-2.1.6/
    • Sudo python3 setup.py install

N'a pas enquêté sur la raison pour laquelle les deux premiers ont échoué, pourrait essayer plus tard. J'espère que cela aide quelqu'un. 

3
cristian

Essayez ça bourgeon 

Sudo wget http://cdn.mysql.com//Downloads/Connector-Python/mysql-connector-python-2.1.3.tar.gz

gunzip mysql-connector-python-2.1.3.tar.gz

tar xf mysql-connector-python-2.1.3.tar

cd mysql-connector-python-2.1.3

Sudo python3 setup.py install
3
gdxn96

J'ai trouvé que la solution @ gdxn96 fonctionnait pour moi, mais avec 1 changement.

Sudo wget http://cdn.mysql.com//Downloads/Connector-Python/mysql-connector-python-2.1.3.tar.gz
tar -zxvf mysql-connector-python-2.1.3.tar
cd mysql-connector-python-2.1.3
Sudo python3 setup.py install
2
Spac3

L’erreur stupide que j’ai faite est de garder mysql.py dans le même répertoire. Essayez de renommer mysql.py en un autre nom afin que python ne considère pas cela comme un module.

2
Deepak Chauhan

Je viens de déplacer le dossier source connector de dossier mysql vers site-packages. Et exécuter import connector

0
Горыныч

Utilisez pip3 install mysql-connectorpour installer Python fourni (si vous utilisez Python 3. Pour Python 2, vous pouvez utiliser pip). 

0
Tech Maniac

Vous devez utiliser l'une des commandes suivantes. Lequel dépend du système d'exploitation et des logiciels que vous avez et utilisez.

Sudo easy_install mysql-python (mix os)
Sudo pip install mysql-python (mix os)
Sudo apt-get install python-mysqldb (Linux Ubuntu, ...)
cd /usr/ports/databases/py-MySQLdb && make install clean (FreeBSD)
yum install MySQL-python (Linux Fedora, CentOS ...)
0
Ashish Gupta

Il suffit simplement de vérifier si le kit de connecteurs MySQL est installé sur votre PC

0
James Newborn