J'ai du mal à utiliser MySQL avec Python dans mon système Windows.
J'utilise actuellement Python 2.6. J'ai essayé de compiler le code source de MySQL-python-1.2.3b1 (qui est censé fonctionner pour Python 2.6?) En utilisant les scripts de configuration fournis. Le script d'installation s'exécute et ne signale aucune erreur, mais il ne génère pas de module _mysql.
J'ai également essayé de configurer MySQL pour Python 2.5 sans succès. Le problème avec l'utilisation de 2.5 est que Python 2.5 est compilé avec Visual Studio 2003 (je l'ai installé en utilisant les binaires fournis). J'ai Visual Studio 2005 sur mon système Windows. Par conséquent, setuptools ne parvient pas à générer le module _mysql.
De l'aide ?
Réponses:
Page de téléchargement pour python-mysqldb . La page comprend des binaires pour les versions 32 et 64 bits de pour Python 2.5, 2.6 et 2.7.
Il y a également une discussion sur la suppression de l'avertissement d'obsolescence .
MISE À JOUR : C'est une vieille réponse. Actuellement, je recommanderais d'utiliser PyMySQL. C'est du python pur, donc il supporte tous les OS de la même manière, c'est presque un remplacement de mysqldb, et il fonctionne aussi avec python 3. La meilleure façon de l'installer est d'utiliser pip. Vous pouvez l'installer à partir d' ici (plus d'instructions ici ), puis exécuter:
la source
pip install pymysql
,syncdb
se plaignait toujours duMySQLdb
module manquant .Cela peut ressembler à des conseils de votre grand-père, mais toutes les réponses ici ne mentionnent pas la meilleure façon: allez et installez ActivePython au lieu des binaires Windows de python.org. Je me demandais vraiment depuis longtemps pourquoi le développement de Python sur Windows était si compliqué - jusqu'à ce que j'installe activestate python. Je ne suis pas affilié à eux. C'est juste la pure vérité. Écrivez-le sur tous les murs: développement Python sous Windows = ActiveState ! vous alors juste
pypm install mysql-python
et tout fonctionne bien. pas de compilation orgie. pas d'erreurs étranges. pas de terreur. Commencez simplement à coder et à faire du vrai travail après cinq minutes. C'est la seule façon d'aller sur Windows. Vraiment.la source
En tant que débutant en Python apprenant l'écosystème Python, je viens de terminer cela.
Installer les instructions de setuptools
Installez MySQL 5.1. Téléchargez le MSI 97,6 Mo à partir d' ici. Vous ne pouvez pas utiliser la version Essentials car elle ne contient pas les bibliothèques C.
Veillez à sélectionner une installation personnalisée et marquez les outils / bibliothèques de développement pour l'installation car cela n'est pas fait par défaut. Ceci est nécessaire pour obtenir les fichiers d'en-tête C.
Vous pouvez vérifier que vous avez fait cela correctement en recherchant dans votre répertoire d'installation un dossier nommé "include". EG C: \ Program Files \ MySQL \ MySQL Server 5.1 \ include. Il devrait contenir tout un tas de fichiers .h.
Installez Microsoft Visual Studio C ++ Express 2008 à partir d' ici. Ceci est nécessaire pour obtenir un compilateur C.
Ouvrez une ligne de commande en tant qu'administrateur (faites un clic droit sur le raccourci Cmd puis "Exécuter en tant qu'administrateur". Assurez-vous d'ouvrir une nouvelle fenêtre après avoir installé ces choses ou votre chemin ne sera pas mis à jour et l'installation échouera toujours.
À partir de l'invite de commande:
easy_install -b C: \ temp \ someempdir mysql-python
Cela échouera - ce qui est OK.
Ouvrez maintenant site.cfg dans votre répertoire temporaire C: \ temp \ someempdir et modifiez le paramètre "registry_key" sur:
Registry_key = SOFTWARE \ MySQL AB \ MySQL Server 5.1
maintenant CD dans votre répertoire temporaire et:
python setup.py nettoyer
installation de python setup.py
Vous devriez être prêt à basculer!
Voici un script super simple pour commencer à apprendre l'API Python DB pour vous - si vous en avez besoin.
la source
J'ai trouvé un emplacement où une personne avait construit avec succès mysql pour python2.6, partageant le lien, http://www.technicalbard.com/files/MySQL-python-1.2.2.win32-py2.6.exe
... vous pourriez voir un avertissement lors de l'importation de MySQLdb, ce qui est bien et cela ne fera aucun mal,
C: \ Python26 \ lib \ site-packages \ MySQLdb__init __. Py: 34: DeprecationWarning: le module sets est obsolète depuis les sets import ImmutableSet
la source
Et pymysql ? C'est du pur Python, et je l'ai utilisé sous Windows avec un succès considérable, en contournant les difficultés de compilation et d'installation de mysql-python.
la source
Vous n'êtes pas la seule personne à avoir des problèmes avec Python 2.6 et MySQL ( http://blog.contriving.net/2009/03/04/using-python-26-mysql-on-windows-is-nearly-impossible/ ) . Voici une explication comment il devrait fonctionner sous Python 2.5 http://i.justrealized.com/2008/04/08/how-to-install-python-and-django-in-windows-vista/ Bonne chance
la source
Des binaires Windows pour MySQL-Python (2.4 et 2.5) sont disponibles sur Sourceforge . Avez-vous essayé ceux-ci?
la source
Les binaires précompilés sur http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python fonctionnent juste pour moi.
MySQL_python-1.2.5-cp27-none-win_amd64.whl
fichier avec le programme d'extraction de zip.C:\Python27\Lib\site-packages\
la source
Sur Python 3.4, j'ai installé mysqlclient à partir de http://www.lfd.uci.edu/~gohlke/pythonlibs/ avec pip install mysqlclient et cela fonctionne.
la source
Vous pouvez essayer d'utiliser myPySQL. C'est vraiment facile à utiliser; pas de compilation pour Windows, et même si vous avez besoin de le compiler pour une raison quelconque, vous n'avez besoin que de Python et Visual C installés (pas mysql).
http://code.google.com/p/mypysql/
Bonne chance
la source
Parce que j'exécute python dans un virtualenv (pylônes / pyramide), je n'ai pas pu exécuter les programmes d'installation binaires (utilement) liés précédemment.
J'ai eu des problèmes en suivant les étapes avec la réponse de Willie, mais j'ai déterminé que le problème est (probablement) que j'exécute l'installation de Windows 7 x64, ce qui place la clé de registre pour mysql dans un emplacement légèrement différent, en particulier dans mon cas (note: je J'utilise la version 5.5) dans: "HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ MySQL AB \ MySQL Server 5.5".
CEPENDANT, "HKEY_LOCAL_MACHINE \" ne peut pas être inclus dans le chemin ou il échouera.
De plus, j'ai dû faire un redémarrage entre les étapes 3 et 4.
Après avoir travaillé sur tout cela, l'OMI, il aurait été plus intelligent d'exécuter l'ensemble de l'environnement de développement python à partir de cygwin.
la source
Si vous recherchez Python 3.2, cela semble la meilleure solution que j'ai trouvée jusqu'à présent
Source: http://wiki.python.org/moin/MySQL
la source
Vous pouvez également envisager d'utiliser Cygwin , il a des bibliothèques mysql python dans le référentiel.
la source
Vous pouvez également utiliser pyodbc avec le connecteur MySQL / ODBC pour utiliser MySQL sous Windows. Unixodbc est également disponible pour rendre le code compatible sous Linux. Pyodbc utilise l' API Python DB 2.0 standard, donc si vous vous en tenez à cela, la commutation entre les pilotes MySQL / PostgreSQL / SQLite / ODBC / JDBC, etc. devrait être relativement simple.
la source
a voté pour la réponse d'itsadok car cela m'a également conduit à l'installation de python 2.7, qui se trouve ici: http://www.codegood.com/archives/129
la source
J'en ai marre des problèmes d'installation avec MySQLdb et j'ai essayé pymysql à la place.
Installation facile;
Et les API sont à peu près les mêmes.
la source