【问题标题】:psycopg2 on OSX: do I have to install PostgreSQL too?OSX 上的 psycopg2:我也必须安装 PostgreSQL 吗?
【发布时间】:2010-11-06 09:08:09
【问题描述】:

我想从 OS/X 中的 Python 访问在远程机器上运行的 postgreSQL 数据库。我也必须在mac上安装postgres吗?或者 psycopg2 会自行工作。

对于 os/x 的 psycopg2 的良好安装指南有什么提示吗?

【问题讨论】:

    标签: python macos postgresql


    【解决方案1】:

    macports 告诉我 psycopg2 包依赖于 postgres 客户端和库(但不依赖于 db 服务器)。如果你成功安装了 psycopg,那么你应该很高兴。

    如果您还没有安装,请考虑使用 macports 或 fink 为您处理依赖关系解析。在大多数情况下,这会使事情变得更容易(偶尔会爆发构建问题)。

    【讨论】:

      【解决方案2】:

      psycopg2 需要 PostgreSQL libpq 库和 pg_config 实用程序,这意味着您需要安装大量的 PostgreSQL。您可以通过 MacPorts 安装 Postgres 和 psycopg2,但版本情况有些混乱——您可能还需要安装更新的 Python,特别是如果您想使用最新版本的 PostgreSQL 库。根据您想要做的事情,例如,如果您想要使用其他一些 Python,那么获取更标准的 PostgreSQL 安装并自己构建 psycopg2 可能会更容易。如果您已经安装了 gcc 等,这非常容易,通常唯一的构建问题是确保它在 libpq 包含文件的正确位置。请参阅 Getting psycopg2 to work on Mac OS X LeopardInstalling psycopg2 on OS X 了解一些涵盖您可能遇到的常见构建问题的方法。

      【讨论】:

        【解决方案3】:

        您可以从OS X PostgreSQL package 安装。允许它更改您的内存设置并重新启动(通过删除“/etc/sysctl.conf”可以恢复)- README 文件(告诉您自己执行此操作)已过时。然后使用(或获取,如果你还没有的话)EasyInstall

        检查 PostgreSQL 安装程序把东西放在哪里 - 我的在这里:

        /Library/PostgreSQL/8.4/
        

        将此路径添加到您的主目录中的.bash_login.bash_profile 文件(如果您还没有,请创建一个):

        export PATH="/Library/PostgreSQL/8.4/bin:$PATH"
        

        然后(在运行 OS 10.4.11 和 Python 2.6 的 Intel iMac 上)执行:

        sudo easy_install psycopg2
        

        这找到了 psycopg2 2.0.11 并且(在我的设置中)给出了以下读数:

        warning: no files found matching '*.html' under directory 'doc'
        warning: no files found matching 'MANIFEST'
        zip_safe flag not set; analyzing archive contents...
        Adding psycopg2 2.0.11 to easy-install.pth file
        
        Installed /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/psycopg2-2.0.11-py2.6-macosx-10.3-i386.egg
        Processing dependencies for psycopg2
        Finished processing dependencies for psycopg2
        

        所以我想我没有 psycopg2 文档...但是,尽管有警告,我还是可以这样做:

        python
        >>>import psycopg2
        >>>
        

        成功了吗?可能。我还没有尝试运行任何东西,但成功导入是第一个目标。顺便说一句,这是给 Django 的。

        【讨论】:

        • 感谢 Dave - 我会尝试使用它,但我想尽量避免在我的 Mac 上安装完整的 Postgres
        猜你喜欢
        • 1970-01-01
        • 2022-06-30
        • 1970-01-01
        • 1970-01-01
        • 2021-10-11
        • 2010-12-30
        • 2011-03-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多