comment puis-je vérifier la connexion de base de données de mysql dans django
comment puis-je le faire?
J'ai pensé, je peux lire quelque chose de la base de données, mais il a l'air trop bien, est-il quelque chose?:
settings.DATABASES['default'].check_connection()
Votre projet ne serait pas démarrer si quelque chose est incorrect avec votre connexion de base de données. Ou même
ma connexion ne fonctionnait pas mais shell travaillé
python manage.py shell
sera de retour d'erreur.ma connexion ne fonctionnait pas mais shell travaillé
OriginalL'auteur doniyor | 2015-08-19
Vous devez vous connecter pour publier un commentaire.
Tout ce que vous devez faire est de démarrer une application et si elle n'est pas connecté, il échouera. Autre façon que vous pouvez essayer est de la coque, suivez -
donc, ce qui est un problème?
mon problème est que j'ai utilisé la mauvaise base de données/nom d'utilisateur/mot de passe dans la
settings.py
fichier, changé et tout a fonctionnéMême si dbname ou nom d'utilisateur/mot de passe est mal réglé, l'exécution de shell va générer des erreurs. La version de django utilisez-vous?
(1049, "Unknown database 'dbname’”)
/(1045, "Access denied for user 'user'@'host' (using password: YES)”)
Ce sont les erreurs que vous obtiendrez lors de l'exécution dupython manage.py shell
avec un mauvais db paramètres.Maintenant, c'est ok d'utiliser
django.db.connection.ensure_connection()
OriginalL'auteur Mutant
J'utilise la suite de Django gestion de la commande appelée
wait_for_db
:for _ in range(10)
au lieu de lawhile
boucle.OriginalL'auteur LondonAppDev
J'ai eu un cas plus compliqué, où je suis en utilisant mongodb derrière djongo module, RDS et mysql. Ainsi, non seulement est-il de multiples bases de données, mais djongo jette un SQLDecode erreur à la place. J'ai également eu à exécuter et à chercher à obtenir ce travail:
Je charge dans mon application
__init__.py
, comme je le veux pour s'exécuter au démarrage qu'une seule fois et uniquement si le DÉBOGAGE est activé. Espérons que cela aide!OriginalL'auteur radtek