MySQL の不適切な構成: 相対パス エラーの解決
Django で「ImproperlyConfigured: Errorloading MySQLdb module」エラーが発生した場合、それはMySQL クライアント ライブラリへのパスに関連する不適切な構成。この問題の内訳と OS X El Capitan ユーザー向けの解決策は次のとおりです:
問題:
OS X El Capitan (10.11) では、Apple はシステム整合性保護を実装しました。 (SIP)、保護された場所にあるプログラムが相対パスで参照されるライブラリを使用できないようにします。 MySQL-Python モジュールは、「/Library/Python/2.7/site-packages/_mysql.so」内の相対パスを使用して、共有ライブラリ「libmysqlclient.18.dylib」を参照します。
解決策:
この問題を解決するには、「install_name_tool」ユーティリティを使用して、_mysql.so に「libmysqlclient.18.dylib」への絶対参照を使用させることができます。 「libmysqlclient.18.dylib」が「/usr/local/mysql/lib/」にあると仮定して、次のコマンドを実行します。
sudo install_name_tool -change libmysqlclient.18.dylib \ /usr/local/mysql/lib/libmysqlclient.18.dylib \ /Library/Python/2.7/site-packages/_mysql.so
このコマンドは、「_mysql.so」の参照を更新します。これにより、Django が MySQL クライアント ライブラリを正常にロードできるようになります。
以上がOS X El Capitan で Django が「ImproperlyConfigured: Error Loading MySQLdb Module」をスローするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。