2011-09-30 56 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