web-dev-qa-db-fra.com

Erreur lors du chargement du module MySQLdb: libmysqlclient.so.20: impossible d'ouvrir le fichier d'objet partagé: aucun fichier ou répertoire de ce type

J'avais un projet Django en cours d'exécution et, pour certaines raisons, j'ai dû supprimer la version actuelle de MySQL et installer une version différente de MySQL sur ma machine. 

Mais maintenant, quand j'essaye de lancer ce programme, j'obtiens une erreur comme suit:

raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
Django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: libmysqlclient.so.20: cannot open shared object file: No such file or directory
13
Dawn T Cherian

réinstallez la bibliothèque partagée c:

pip uninstall mysql-python
pip install mysql-python
14
user3131905

Mon problème avec le même message d'erreur était que l'environnement mysql n'était pas entièrement configuré. Je devais désinstaller MySQL-python; installez libmysqlclient-dev; réinstallez MySQL-python pour résoudre le problème.

Donc le correctif était aussi:

  • Sudo pip désinstaller MySQL-python (désinstaller à partir du gestionnaire de paquets de votre choix)
  • Sudo apt-get installez libmysqlclient-dev

  • Sudo pip installe MySQL-python

** Je dois également mentionner que j'ai utilisé l'option --no-cache-dir avec pip install pour toucher directement PYPI, ce qui a permis de découvrir les éléments suivants:

sh: 1: mysql_config: not found
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/tmp/pip-build-Y7RFpJ/mysql-python/setup.py", line 17, in <module>
    metadata, options = get_config()
  File "/tmp/pip-build-Y7RFpJ/mysql-python/setup_posix.py", line 43, in get_config
    libs = mysql_config("libs_r")
  File "/tmp/pip-build-Y7RFpJ/mysql-python/setup_posix.py", line 25, in mysql_config
    raise EnvironmentError("%s not found" % (mysql_config.path,))
EnvironmentError: mysql_config not found

et me conduire à ici

Utilisation de: mysql 5.7, mysql-python 1.2.5, Django 1.8.9, ubuntu 16.04

17
Darnell Lynch

J'ai résolu le même problème via le paramètre ci-dessous variable d'environnement:

export LD_LIBRARY_PATH=/usr/local/mysql/lib
1
Pondor

Utilisez les commandes suivantes:

pip uninstall mysql-python
pip install mysql-python

Dans mon cas, cela fonctionne car il effectue une recherche dans les fichiers compatibles.

0
user3767321