Si vous cherchez à l'utiliser avec Python3 (par exemple, avec la dernière version de Django), vous aurez besoin de mysqlclient car MysqlDB ne prend pas en charge python3. Voir cette question
TD Smith
J'utilise mysqlclient avec Python 2.7 et MariaDB sans problème jusqu'à présent.
Dave Everitt
Réponses:
522
C'est facile à faire, mais difficile de se rappeler l'orthographe correcte:
pip install mysqlclient
Si vous avez besoin de versions 1.2.x (hérité de Python uniquement), utilisez pip install MySQL-python
Remarque: Certaines dépendances peuvent devoir être en place lors de l'exécution de la commande ci-dessus. Quelques conseils sur la façon de les installer sur diverses plates-formes:
celui-ci a fonctionné, pour une raison quelconque, la simple installation de pip ne fonctionne pas
Dap
Dans Ubuntu 14.04, obtiendra une erreur "lever EnvironmentError ("% s not found "% (mysql_config.path,)", et le premier cmd a résolu le problème, merci, sauvez-moi un peu de temps
zhihong
Pour corriger l' error: command 'x86_64-linux-gnu-gcc' failed with exit status 1utilisationsudo apt-get install build-essential
FelikZ
Je me demande pourquoi cela est nécessaire. Une chose me vient à l'esprit. J'ai testé cela en installant uniquement et non en construisant. Avez-vous construit l'une des choses que vous avez installées plutôt que de simplement les installer?
Ray Kiddy
Cela devrait être une réponse acceptée bien sûr pour Ubuntu.
Roon13
23
Première
pip install pymysql
Mettez ensuite le code ci-dessous dans __init__.py( projectname/__init__.py)
import pymysql
pymysql.install_as_MySQLdb()
Mon environnement est (python3.5, django1.10) et cette solution fonctionne pour moi!
Woow, j'ai abandonné plus de 5 heures en essayant de résoudre ce problème sans succès. C'est la seule solution qui a fonctionné sur Ubuntu 16.04 / python 3.5 / Django 1.11. Merci de partager cela.
Paullo
cela ne fonctionne pas pour moi, mon environnement est python 3.7 et django 2.2. Sil te plait aide moi.
Rajen K Bhagat
Cela devrait être là-haut. Je cherche une solution depuis des heures. J'ai un virtualenv avec python 2.7 exécutant django 1.6. Je n'ai pas pu installer MySQL-python ni mysqlclient. Peu importe ce que j'ai essayé, j'obtenais une "erreur fatale: mysql.h". Celui-ci a fait l'affaire.
rolandsaven
22
J'ai rencontré des problèmes lors de l'installation de la version 64 bits de MySQLdb sous Windows via Pip (problème de compilation des sources) [version 32 bits installée ok]. Géré pour installer le MySQLdb compilé à partir du fichier .whl disponible sur http://www.lfd.uci.edu/~gohlke/pythonlibs/
Suivi: si vous avez une version 64 bits de Python installée, vous souhaitez installer la version AMD 64 bits de MySQLdb à partir du lien ci-dessus [c'est-à-dire même si vous avez un processeur Intel]. Si vous essayez plutôt d'installer la version 32 bits, je pense que vous obtenez l'erreur de roue non prise en charge dans les commentaires ci-dessous.
J'avais besoin d'un client MySQL. pip install mysqlclient-1.3.7-cp27-none-win_amd64.whlfonctionne très bien.
arsenik
2
Je suis allé à http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python pour télécharger le whlfichier (j'ai dl'd 64 bits pour correspondre à mon installation Python 64 bits). Fichier enregistré dans le c:/répertoire et exécuté pip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whlIl s'est installé en quelques secondes et était prêt à l'emploi. Trop facile!
Curtisp
A également fonctionné pour moi, car l'installation de pip par son nom échouait.
La question était spécifiquement mentionnée pip. Quelle distribution utilisez-vous? Sur Fedora 24, cela fonctionne pour installer le module via pip: sudo dnf install python python-devel mysql-devel redhat-rpm-config gcc,sudo pip install MySQL-python
Marian
Je comprends que la question se fait via pip mais personnellement je n'ai pas pu la résoudre en utilisant pip. Par conséquent, je viens de partager ma solution de contournement qui a résolu le problème pour moi. J'utilise centos 6.8. la liste des pip ne montre rien de lié à mysql et quand je fais "pip installe MySQL-python" cela a jeté une erreur. Maintenant, chose intéressante, j'ai compris qu'une fois que nous avons installé via yum i: e "yum install MySQL-python", je peux importer MySQLdb. Une fois terminé avec l'installation de yum, j'ai pu installer via pip sans aucune erreur.
Ashwin
6
Accédez à pycharm puis accédez au paramètre par défaut -> pip (double-clic) - pymesqldb ..--> install - après l'installation, utilisez dans un programme comme celui-ci
import pymysql asMySQLdb# Open database connection
db =MySQLdb.connect("localhost","root","root","test")# prepare a cursor object using cursor() method
cursor = db.cursor()# execute SQL query using execute() method.
cursor.execute("show tables")# Fetch a single row using fetchone() method.
data = cursor.fetchall()print(data)# disconnect from server
db.close()
J'ai aussi eu le même problème. Suivez ces étapes si vous êtes sous Windows. Allez à: 1.Mon ordinateur 2.Propriétés du système 3.Paramètres système avancés 4. Sous l'onglet "Avancé", cliquez sur le bouton qui dit "Variables d'environnement" 5. Ensuite, sous Variables système, vous devez ajouter / modifier les variables suivantes: PYTHONPATH et Path. Voici un aperçu de ce à quoi mes variables ressemblent: chemin python:
La réponse ci-dessus est excellente, mais il peut y avoir des problèmes lorsque nous utilisons pip pour installer MySQL-python dans Windows
par exemple, il a besoin de certains fichiers associés à Visual Stdio Une solution installe VS2008 ou 2010 …… Évidemment, cela coûte trop cher.
Une autre façon est la réponse de @ bob90937. Je suis ici pour faire quelque chose à ajouter.
avec http://www.lfd.uci.edu/~gohlke/pythonlibs , vous pouvez télécharger de nombreux binaires Windows de nombreux packages d'extensions open source scientifiques pour la distribution officielle CPython du langage de programmation Python.
Retour au sujet, nous pouvons choisir MySQL-python (py2) ou Mysqlclient (py3) et utiliser pip install pour installer. cela nous donne une grande commodité!
Pas une très bonne réponse. Vous supposez que la version Python est 3 et que le système d'exploitation est Debian / Ubuntu, mais vous ne le savez pas. Veuillez attendre que l'auteur ajoute plus de détails.
phd
0
Mon environnement est:
Windows 10 Pro,
Python 3.7 (python-3.7.1-amd64.exe),
MySQL 8.0 (mysql-installer-web-community-8.0.13.0.msi)
en fait, suivez la réponse de @Nick T ne fonctionne pas pour moi, j'essaie de apt-get install python-mysqldbtravailler pour moi
root@2fb0da64a933:/home/test_scrapy# apt-get install python-mysqldbReadingpackage lists...DoneBuilding dependency tree
Reading state information...DoneThe following additional packages will be installed:
libmariadbclient18 mysql-common
Suggested packages:default-mysql-server |virtual-mysql-server python-egenix-mxdatetime python-mysqldb-dbg
The following NEW packages will be installed:
libmariadbclient18 mysql-common python-mysqldb
0 upgraded,3 newly installed,0 to removeand29not upgraded.Need to get843 kB of archives.Afterthis operation,4611 kB of additional disk space will be used.Do you want to continue?[Y/n] y
Get:1 http://deb.debian.org/debian stretch/main amd64 mysql-common all 5.8+1.0.2 [5608 B]Get:2 http://deb.debian.org/debian stretch/main amd64 libmariadbclient18 amd64 10.1.38-0+deb9u1 [785 kB]Get:3 http://deb.debian.org/debian stretch/main amd64 python-mysqldb amd64 1.3.7-1.1 [52.1 kB] Fetched843 kB in23s(35.8 kB/s)
debconf: delaying package configuration, since apt-utils isnot installed
Selecting previously unselected package mysql-common.(Reading database ...13223 files and directories currently installed.)Preparing to unpack .../mysql-common_5.8+1.0.2_all.deb ...Unpacking mysql-common (5.8+1.0.2)...Selecting previously unselected package libmariadbclient18:amd64.Preparing to unpack .../libmariadbclient18_10.1.38-0+deb9u1_amd64.deb ...Unpacking libmariadbclient18:amd64 (10.1.38-0+deb9u1)...Selecting previously unselected package python-mysqldb.Preparing to unpack .../python-mysqldb_1.3.7-1.1_amd64.deb ...Unpacking python-mysqldb (1.3.7-1.1)...Setting up mysql-common (5.8+1.0.2)...
update-alternatives:using/etc/mysql/my.cnf.fallback to provide /etc/mysql/my.cnf (my.cnf)inauto mode
Setting up libmariadbclient18:amd64 (10.1.38-0+deb9u1)...Processing triggers for libc-bin (2.24-11+deb9u3)...Setting up python-mysqldb (1.3.7-1.1)...
root@2fb0da64a933:/home/test_scrapy# python Python2.7.13(default,Nov242017,17:33:09)[GCC 6.3.020170516] on linux2
Type"help","copyright","credits"or"license"for more information.>>>importMySQLdb>>>
Réponses:
C'est facile à faire, mais difficile de se rappeler l'orthographe correcte:
Si vous avez besoin de versions 1.2.x (hérité de Python uniquement), utilisez
pip install MySQL-python
Remarque: Certaines dépendances peuvent devoir être en place lors de l'exécution de la commande ci-dessus. Quelques conseils sur la façon de les installer sur diverses plates-formes:
Ubuntu 14, Ubuntu 16, Debian 8.6 (jessie)
Fedora 24:
Mac OS
si cela échoue, essayez
la source
pip search mysql
et trouver celui dont vous avez besoin dans la sortie.pip search mysqldb
trouvé et je ne l' ai pas trouvé. Ainsi, je +1 cette réponse.À partir d'un nouveau système Ubuntu 14.04.2, ces deux commandes étaient nécessaires:
Le simple fait de procéder à l'installation par pip n'a pas fonctionné.
Depuis http://codeinthehole.com/writing/how-to-set-up-mysql-for-python-on-ubuntu/
la source
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
utilisationsudo apt-get install build-essential
Première
Mettez ensuite le code ci-dessous dans
__init__.py
(projectname/__init__.py
)Mon environnement est (python3.5, django1.10) et cette solution fonctionne pour moi!
J'espère que cela t'aides!!
la source
J'ai rencontré des problèmes lors de l'installation de la version 64 bits de MySQLdb sous Windows via Pip (problème de compilation des sources) [version 32 bits installée ok]. Géré pour installer le MySQLdb compilé à partir du fichier .whl disponible sur http://www.lfd.uci.edu/~gohlke/pythonlibs/
Le fichier .whl peut ensuite être installé via pip en tant que document dans https://pip.pypa.io/en/latest/user_guide/#installing-from-wheels
Par exemple, si vous enregistrez dans
C:/
le, vous pouvez installer viapip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whl
Suivi: si vous avez une version 64 bits de Python installée, vous souhaitez installer la version AMD 64 bits de MySQLdb à partir du lien ci-dessus [c'est-à-dire même si vous avez un processeur Intel]. Si vous essayez plutôt d'installer la version 32 bits, je pense que vous obtenez l'erreur de roue non prise en charge dans les commentaires ci-dessous.
la source
pip install mysqlclient-1.3.7-cp27-none-win_amd64.whl
fonctionne très bien.whl
fichier (j'ai dl'd 64 bits pour correspondre à mon installation Python 64 bits). Fichier enregistré dans lec:/
répertoire et exécutépip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whl
Il s'est installé en quelques secondes et était prêt à l'emploi. Trop facile!bien cela a fonctionné pour moi:
c'est pour python 3.x
la source
J'ai essayé toutes les options mais je n'ai pas pu le faire fonctionner sur la plate-forme Redhat. J'ai fait ce qui suit pour le faire fonctionner: -
Une fois que le package a été installé a pu importer le module comme suit dans l'interpréteur: -
la source
pip
. Quelle distribution utilisez-vous? Sur Fedora 24, cela fonctionne pour installer le module via pip:sudo dnf install python python-devel mysql-devel redhat-rpm-config gcc
,sudo pip install MySQL-python
Accédez à pycharm puis accédez au paramètre par défaut -> pip (double-clic) - pymesqldb ..--> install - après l'installation, utilisez dans un programme comme celui-ci
la source
Si vous utilisez Raspberry Pi [Raspbian OS]
Il faut d'abord installer la commande pip
Donc, il suffit d'installer séquentiellement
la source
Vous pouvez accéder à ce site Web pour télécharger le package.
la source
Si vous ne parvenez pas à installer mysqlclient, vous pouvez également installer pymysql :
pip install pymysql
Cela fonctionne de la même manière que MySqldb . Après cela, utilisez pymysql partout au lieu de MySQLdb
la source
J'ai aussi eu le même problème. Suivez ces étapes si vous êtes sous Windows. Allez à: 1.Mon ordinateur 2.Propriétés du système 3.Paramètres système avancés 4. Sous l'onglet "Avancé", cliquez sur le bouton qui dit "Variables d'environnement" 5. Ensuite, sous Variables système, vous devez ajouter / modifier les variables suivantes: PYTHONPATH et Path. Voici un aperçu de ce à quoi mes variables ressemblent: chemin python:
chemin:
Voir ce lien pour référence
la source
La réponse ci-dessus est excellente, mais il peut y avoir des problèmes lorsque nous utilisons pip pour installer MySQL-python dans Windows
par exemple, il a besoin de certains fichiers associés à Visual Stdio Une solution installe VS2008 ou 2010 …… Évidemment, cela coûte trop cher.
Une autre façon est la réponse de @ bob90937. Je suis ici pour faire quelque chose à ajouter.
avec http://www.lfd.uci.edu/~gohlke/pythonlibs , vous pouvez télécharger de nombreux binaires Windows de nombreux packages d'extensions open source scientifiques pour la distribution officielle CPython du langage de programmation Python.
Retour au sujet, nous pouvons choisir MySQL-python (py2) ou Mysqlclient (py3) et utiliser pip install pour installer. cela nous donne une grande commodité!
la source
Pour Python3, je devais faire ceci:
la source
pip install mysql-connector-python
comme indiqué dans la documentation:https://dev.mysql.com/doc/connector-python/en/connector-python-installation-binary.html
la source
sur RHEL 7:
sudo yum install yum-utils mariadb-devel python-pip python-devel gcc
sudo /bin/pip2 install MySQL-python
la source
Si Windows est installé sur votre système, tapez la commande suivante sur cmd:
si la commande ci-dessus ne fonctionne pas, essayez d'utiliser:
Maintenant, si les commandes ci-dessus ne font pas le travail, essayez d'utiliser:
Voilà, vous êtes prêt à partir maintenant.
la source
Beaucoup des réponses données ici sont assez déroutantes, donc je vais essayer de le dire simplement. Cela m'a aidé à installer ce
puis utilisez la commande suivante dans le fichier python
De cette façon, vous pouvez utiliser MySQLdb sans aucun problème.
la source
Si pip3 ne fonctionne pas, vous pouvez essayer:
la source
Mon environnement est:
installer pip mysqlclient-1.3.13-cp37-cp37m-win_amd64.whl
travaille pour moi.
la source
en fait, suivez la réponse de @Nick T ne fonctionne pas pour moi, j'essaie de
apt-get install python-mysqldb
travailler pour moila source