尝试使用Python设置Postgresql - 已安装psycopg2但错误

时间:2014-02-21 03:08:45

标签: python django postgresql osx-mountain-lion

我正在尝试将数据库添加到新的python应用程序中。 Postgres是我的首选数据库,它可以在我的机器上运行,有许多rails应用程序,已启动并运行,我已经为我的项目创建了一个数据库。

到目前为止的排查:

  

pip install psycopg2

渲染看起来合适:

Requirement already satisfied (use --upgrade to upgrade): psycopg2 in /usr/local/lib/python2.7/site-packages
Cleaning up...

好的,测试一下

  

>> import psycopg2

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/Cellar/python/2.7.6/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/__init__.py", line 50, in <module>
    from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID
ImportError: dlopen(/usr/local/Cellar/python/2.7.6/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/_psycopg.so, 2): Library not loaded: @loader_path/../lib/libssl.1.0.0.dylib
  Referenced from: /usr/local/Cellar/python/2.7.6/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/_psycopg.so
  Reason: image not found

看起来像模块问题。

在我的bash_profile中,我正在导出正确版本的psql:

export PATH=/usr/pgsql-9.3/bin:"$PATH"

在我开始运行服务器之前,我的数据库设置不应该是因为它未通过测试,但是:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'firstBlog',
        'USER': 'ML',
        'PASSWORD': '',
        'HOST': '127.0.0.1',
        'PORT': '5432',
    }
}

当然,尝试运行服务器也会导致崩溃。

Brew Doctor没有发现任何错误。我可以继续排除故障的任何想法吗?

1 个答案:

答案 0 :(得分:1)

在这种情况下,似乎我的环境变量没有为Django正确导出psql。我在@karthikr链接的页面上找到了解决方案的解决方案。

https://stackoverflow.com/a/16740552/2967262