【发布时间】:2014-04-03 21:48:38
【问题描述】:
我从 osX 10.7 升级到 10.9,我所有的 PostgreSQL 数据库调用都开始失败。
我通过
升级到 psycopg2 版本 2.5.2
$ sudo pip install --upgrade psycopg2
当我尝试运行服务器时,我得到一个 importError。
$ python manage.py runserver
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/_psycopg.so, 2): Library not loaded: /usr/local/lib/libpq.5.4.dylib
Referenced from: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/_psycopg.so
Reason: image not found
这是什么意思?
似乎 Python 正在尝试加载:
/usr/local/lib/libpq.5.4.dylib
但文件不存在,我该如何更正?
我是如何解决的:
似乎 postgreSQL 在错误的位置寻找文件。
所以,我从二进制文件安装了 PostgreSQL 9.3。 我认为创建了一个指向 *.dynlib 文件的符号链接。
ln -s /Library/PostgreSQL/9.3/lib/libpq.5.6.dylib /usr/local/lib/libpq.5.4.dylib
【问题讨论】:
-
如果你从 Python 解释器运行
import psycopg2,你会得到同样的错误吗?另外,使用的是哪个版本的 Python? -
是的,我确实遇到了同样的错误。我将在我原来的问题中添加细节。 Python-2.7.6
标签: django postgresql psycopg2