2011-09-30 44 views
2

所以我非常確定我已經成功安裝了MySQLdb。我有以下的正確安裝上全新安裝OS X Lion中的:在Mac OS X Lion上設置MySQLdb時出現問題,以便支持Django

  1. phpMyAdmin的

  2. 的MySQL 5.5.16

  3. 的Django 1.3.1

然而當我嘗試在django控制檯中運行「from django.db import connection」時,我得到以下內容:

從django.db進口連接回溯(最近通話 最後一個):文件 「」,1號線,在文件 「/Library/Python/2.7/site-packages/Django -1.3.1-py2.7.egg/django的/分貝/ 初始化 py 「爲, 線78,在 連接=連接[DEFAULT_DB_ALIAS]文件 」 /Library/Python/2.7/site-packages/Django- 1.3.1-py2.7.egg/django/db/utils.py「, line 93,in getitem backend = load_backend(db ['ENGINE'])文件 「/Library/Python/2.7/site-packages/Django-1.3.1-py2.7.egg/django/db/utils.py」, 第33行,in load_backend return import_module('。base',backend_name)文件 「/Library/Python/2.7/site-packages/Django-1.3.1-py2.7.egg/django/utils/importlib.py」, 第35行,in import_module import(name)文件 「/Library/Python/2.7/site-packages/Django-1.3.1-py2.7.egg/django/db/backends/mysql/base.py」 , 第14行,在 引發錯誤配置(「加載MySQLdb模塊時出錯:%s」%e) 未正確配置:加載MySQLdb模塊時出錯:dlopen(/ Users/[我的 用戶名] /。python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg -tmp/_mysql.so, 2):未加載的庫:libmysqlclient.18.dylib引用自: 。 /用戶/ [我 用戶名] /蟒-卵/ MySQL_python-1,2,3- py2.7-MacOSX的-10.7-intel.egg-TMP/_mysql.so 原因:圖像沒有發現

我不知道爲什麼會發生這種情況,有人能幫助我解決這個問題嗎?

回答

3

簡單,

編輯你的.bash_profile(VI〜/。在.bash_profile)的地方,增加如下一行:

出口DYLD_LIBRARY_PATH = 「在/ usr /本地/ MySQL的/ lib目錄」

此行假定你的mysql安裝目錄是在/ usr /本地/ mysql /下。

這將通過在shell中啓動的python中斷程序來解決執行(.bash_profile導出MySQLdb模塊所需的路徑以加載'libmysqlclient.18.dylib')。

如果您在使用PyCharm等Python IDE時遇到此問題,請將DYLD_LIBRARY_PATH變量添加到啓動模塊配置中。

我希望這有助於:)

此外,

要完全理解這個問題,請閱讀以下部分:

http://mysql-python.sourceforge.net/FAQ.html#importerror

此詳細解釋了這個錯誤

+0

好吧,因此mysql被安裝到「/usr/local/mysql-5.5.16-osx10.6-x86_64」 我添加了適當的行到我的.bash_profile。 而且你正確地推斷出我在運行PyCharm,所以我進入Run meno下的「Edit Configurations」並添加了「DYLD_LIBRARY_PATH ='/ usr/local/mysql-5.5.16-osx10.6-x86_64/lib/'「在」環境變量「下。 但是,當我嘗試通過PyCharm運行程序時,我仍然遇到完全相同的問題... – fox

+0

(另外,我似乎在註釋中有換行符的問題...) – fox

+0

擺脫單一報價中的路徑 – Krolique

1

安裝點子,如果你還沒有準備好,並運行

pip install MySQL-Python

+1

只是去嘗試,沒有骰子。它告訴我_「需求已滿足(使用 - 升級升級):MySQL-Python in /Library/Python/2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg」 _ 所以我使用了「 - 升級」標誌,它通過了運動,它仍然給我同樣的錯誤... – fox

+0

你是怎麼安裝mysql的?你有沒有證實你的MySQL安裝工作正常,你可以連接,創建一個數據庫等? – fourk

+0

我做過了,問題不在於mysql,而在於將mysql連接到python。 – fox

5

我發現這個問題的解決方案如下。它爲我工作。當我從PyCharm運行python控制檯時遇到了這個問題。

sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib