Maison  >  Article  >  base de données  >  Pourquoi Django lance-t-il « ImproperlyConfigured : erreur de chargement du module MySQLdb » sur OS X El Capitan ?

Pourquoi Django lance-t-il « ImproperlyConfigured : erreur de chargement du module MySQLdb » sur OS X El Capitan ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-25 05:09:02426parcourir

Why Does Django Throw

MySQL mal configuré : résolution de l'erreur de chemin relatif

Lorsque vous rencontrez l'erreur "ImproperlyConfigured : Erreur de chargement du module MySQLdb" dans Django, cela indique un configuration incorrecte liée au chemin d'accès à la bibliothèque client MySQL. Voici une description du problème et une solution pour les utilisateurs d'OS X El Capitan :

Problème :

Dans OS X El Capitan (10.11), Apple a implémenté la protection de l'intégrité du système. (SIP), qui empêche les programmes situés dans des emplacements protégés d'utiliser des bibliothèques référencées avec des chemins relatifs. Le module MySQL-Python référence la bibliothèque partagée "libmysqlclient.18.dylib" en utilisant un chemin relatif dans "/Library/Python/2.7/site-packages/_mysql.so".

Solution :

Pour résoudre ce problème, vous pouvez forcer _mysql.so à utiliser une référence absolue à "libmysqlclient.18.dylib" à l'aide de l'utilitaire "install_name_tool". En supposant que "libmysqlclient.18.dylib" se trouve dans "/usr/local/mysql/lib/", exécutez la commande suivante :

sudo install_name_tool -change libmysqlclient.18.dylib \
  /usr/local/mysql/lib/libmysqlclient.18.dylib \
  /Library/Python/2.7/site-packages/_mysql.so

Cette commande mettra à jour la référence dans "_mysql.so" au chemin absolu de "libmysqlclient.18.dylib", permettant à Django de charger avec succès la bibliothèque client MySQL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn