Je fais référence au tutoriel suivant pour créer une page de connexion pour mon application Web. http://code.tutsplus.com/tutorials/intro-to-flask-signing-in-and-out--net-29982
J'ai un problème avec la base de données. Je reçois un
ImportError: No module named MySQLdb
quand j'exécute
http://127.0.0.1:5000/testdb
J'ai essayé toutes les manières possibles d'installer python mysql, celui mentionné dans le tutoriel, easy_install, sudo apt-get install.
J'ai installé mysql dans mon environnement virtuel. Ma structure de répertoires est exactement la même que celle expliquée dans le tutoriel. Le module est correctement installé dans mon système et j'obtiens toujours cette erreur.
Veuillez aider. Qu'est-ce qui peut causer cela.
python
mysql
flask
sqlalchemy
mysql-python
user3182194
la source
la source
Réponses:
Si vous rencontrez des problèmes pour compiler l'extension binaire, ou sur une plate-forme où vous ne pouvez pas, vous pouvez essayer d'utiliser les
PyMySQL
liaisons python pures .Simplement
pip install pymysql
et changez votre URI SQLAlchemy pour commencer comme ceci:Il y a quelques autres pilotes , vous pouvez aussi essayer.
la source
pip install MySQL-python
travaillé.Ou essayez ceci:
la source
sudo apt-get install python-mysqldb
peux-tu essayer
la source
mysqlclient
(OSError: mysql_config not found
) lorsque j'essayais d'exécuter la même application sur Ubuntu, la réponse acceptée l'a résolu.Mon problème est:
et ma résolution:
au tout début, je viens d'installer MySQL-python, mais le problème existait toujours. Donc, je pense que si ce problème se produit, vous devriez également prendre en compte mysql-devel. J'espère que cela t'aides.
la source
pip install MySQL-python
ouais, c'est le ticketJ'ai eu ce problème lorsque je travaillais sur SQLAlchemy. Le dialecte par défaut utilisé par SQLAlchemy pour MySQL est
mysql+mysqldb
.J'ai eu l'
No module named MySQLdb
erreur " " lorsque la commande ci-dessus a été exécutée. Pour le réparer, j'ai installé lemysql-python
module et le problème a été résolu.la source
Cela dépend également de la version Python d'après mon expérience.
Si vous utilisez Python 3, la réponse @DazWorrall a bien fonctionné pour moi.
Cependant, si vous utilisez Python 2, vous devez
qui installerait le module 'MySQLdb' sans avoir à changer l'URI SQLAlchemy.
la source
J'ai donc passé environ 5 heures à essayer de comprendre comment résoudre ce problème en essayant de courir
Avec Ubuntu Server LTS 16.1, une pile LAMP complète, Apache2 MySql 5.7 PHP 7 Python 3 et Django 1.10.2, j'ai vraiment eu du mal à trouver une bonne réponse à cela. En fait, je ne suis toujours pas satisfait, mais la SEULE solution qui a fonctionné pour moi est la suivante ...
suivi de (depuis l'intérieur de l'environnement virtuel)
Je n'aime vraiment pas avoir à utiliser des installations de développement lorsque j'essaie de configurer un nouveau serveur Web, mais malheureusement, cette configuration était le seul chemin le plus confortable que je pouvais emprunter.
la source
Alors que @Edward van Kuik de réponse est correcte, il ne prend pas en compte un problème avec virtualenv v1.7 et ci - dessus .
En particulier, installer
python-mysqldb
viaapt
sur Ubuntu le mettre sous/usr/lib/pythonX.Y/dist-packages
, mais ce chemin n'est pas inclus par défaut dans les virtualenvsys.path
.Donc, pour résoudre ce problème , vous devez créer votre virtualenv avec des packages système en exécutant quelque chose comme:
virtualenv --system-site-packages .venv
la source
Vous avez tellement d'erreurs liées aux autorisations et autres. Vous pouvez essayer ceci:
la source
travaillé pour moi.
la source
Dans ubuntu 20, vous pouvez essayer ceci:
la source