web-dev-qa-db-fra.com

Aucun module nommé MySQLdb

J'utilise Python version 2.5.4 et installe MySQL version 5.0 et Django. Django fonctionne bien avec Python, mais pas avec MySQL. Je l'utilise sous Windows Vista.

350
jbcedge

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

  1. easy_install mysql-python (mix os)
  2. pip installer mysql-python (mix os/python 2)
  3. pip installer mysqlclient (mix os/python 3)
  4. apt-get installez python-mysqldb (Linux Ubuntu, ...)
  5. cd/usr/ports/bases de données/py-MySQLdb && make install clean (FreeBSD)
  6. miam installer MySQL-python (Linux Fedora, CentOS ...)

Pour Windows, voir cette réponse: Installez mysql-python (Windows)

579
derevo

... et rappelez-vous qu'il n'y a pas de MySQLdb pour python3.x

(Je sais que la question concerne python2.x mais Google note ce post assez haut)


EDIT: Comme indiqué dans les commentaires, il y a un fork de MySQLdb qui ajoute le support Python 3: github.com/ PyMySQL/mysqlclient-python

125
Janek Olszak

si votre version de python est 3.5, faites un pip install mysqlclient, les autres choses ne m'ont pas fonctionné

60
goksel

mysqldb est un module pour Python qui n'est pas préinstallé ni avec Django. Vous pouvez télécharger mysqldbici .

45
Evan Fosmark

Ubuntu:

Sudo apt-get install python-mysqldb
33
panckreous

Notez que ceci n'est pas testé pour python 3.x

En CMD

pip install wheel
pip install pymysql

dans settings.py

import pymysql
pymysql.install_as_MySQLdb()

Ça a fonctionné avec moi

21
A.Raouf

Essaye ça.

pip install MySQL-python
11
Venkat Kotra
pip install PyMySQL

puis ajoutez ces deux lignes à votre projet/projet/init. py

import pymysql
pymysql.install_as_MySQLdb()

Fonctionne sur WIN et python 3.3+

10
alphiii

Si pip install mysqlclient génère une erreur et que vous utilisez Ubuntu, essayez:

Sudo apt-get install -y python-dev libmysqlclient-dev && Sudo pip install mysqlclient
7
Kostyantyn

pour fenêtre:

pip install mysqlclient pymysql

ensuite:

importer pymysql pymysql.install_as_MySQLdb ()

pour python 3 Ubuntu

Sudo apt-get install -y python3-mysqldb
6

J'ai rencontré la même situation sous Windows et cherché la solution.

Voir ce message Installez mysql-python (Windows) .

Il souligne que l'installation d'un tel environnement pip est difficile et nécessite de nombreuses autres dépendances.

Mais je sais enfin que si nous utilisons mysqlclient avec une version inférieure à 1.3.4, il n’a plus besoin de cette exigence, alors essayez:

pip install mysqlclient==1.3.4
5
Alfred Huang
  • Allez dans le répertoire de votre projet avec cd.
  • source/bin/activate (activez votre env. si ce n'est pas le cas auparavant).
  • Exécutez la commande easy_install MySQL-python
4
GrvTyagi
pip install --user mysqlclient 

ci-dessus fonctionne pour moi comme un charme pour moi.Je vais l'erreur de sqlalchemy effectivement. Informations sur l'environnement:

Python: 3.6, Ubuntu: 16.04, version 4.6.8

3
Forhad

Merci à derevo mais je pense qu’il existe un autre bon moyen de le faire:

  1. Téléchargez et installez ActivePython
  2. Ouvrir l'invite de commande
  3. Tapez pypm install mysql-python
  4. Lisez les notes spécifiques à ce paquet.

Je pense que pypm est plus puissant et fiable que easy_install.

3
Afshin Mehrabani

Si vous utilisez Windows Vista, vous voudrez peut-être jeter un œil à la pile Bitnami Django. . Il s'agit d'un tout-en-un. pile d’Apache, Python, MySQL, etc., packagée avec Bitrock des programmes d’installation multi-plateformes pour faciliter le démarrage. Il fonctionne sous Windows, Mac et Linux. Oh, et c'est complètement gratuit :)

2
Daniel Lopez

Pour Python 3 + version

installez mysql-connector comme:

pip3 install mysql-connector 

Exemple Python Code de connexion à la base de données:

import mysql.connector
db_connection = mysql.connector.connect(
  Host="localhost",
  user="root",
  passwd=""
)
print(db_connection)

Sortie:

> <mysql.connector.connection.MySQLConnection object at > 0x000002338A4C6B00>

Cela signifie que la base de données est correctement connectée.

2
Om Prakash Sao

J'ai essayé les méthodes ci-dessus, mais toujours pas de module nommé 'MySQLdb', enfin, je réussis avec

easy_install mysql-python

mon env est unbuntu 14.04

2
Pythoner

Si vous utilisez SQLAlchemy et que l'erreur est dans /site-packages/sqlalchemy/dialects/mysql/mysqldb.py:

from ...connectors.mysqldb import (
                        MySQLDBExecutionContext,
                        MySQLDBCompiler,
                        MySQLDBIdentifierPreparer,
                        MySQLDBConnector
                    )

donc vous avez peut-être manqué le connecteur mysqldb pour SQLAlchemy et la solution consiste à réinstaller sqlalchemy après avoir installé le module mysql-python.

1
mtoloo

Sur OSX, ces commandes ont fonctionné pour moi

brew install mysql-connector-c 
pip install MySQL-python
1
Joe Inner

Win10/Python27 cela a fonctionné pour moi:

easy_install mysql-python

tous les autres 'pip install ...' ont échoué avec des erreurs de dépendance

0
Cris