【发布时间】:2010-11-06 09:08:09
【问题描述】:
我想从 OS/X 中的 Python 访问在远程机器上运行的 postgreSQL 数据库。我也必须在mac上安装postgres吗?或者 psycopg2 会自行工作。
对于 os/x 的 psycopg2 的良好安装指南有什么提示吗?
【问题讨论】:
标签: python macos postgresql
我想从 OS/X 中的 Python 访问在远程机器上运行的 postgreSQL 数据库。我也必须在mac上安装postgres吗?或者 psycopg2 会自行工作。
对于 os/x 的 psycopg2 的良好安装指南有什么提示吗?
【问题讨论】:
标签: python macos postgresql
macports 告诉我 psycopg2 包依赖于 postgres 客户端和库(但不依赖于 db 服务器)。如果你成功安装了 psycopg,那么你应该很高兴。
如果您还没有安装,请考虑使用 macports 或 fink 为您处理依赖关系解析。在大多数情况下,这会使事情变得更容易(偶尔会爆发构建问题)。
【讨论】:
psycopg2 需要 PostgreSQL libpq 库和 pg_config 实用程序,这意味着您需要安装大量的 PostgreSQL。您可以通过 MacPorts 安装 Postgres 和 psycopg2,但版本情况有些混乱——您可能还需要安装更新的 Python,特别是如果您想使用最新版本的 PostgreSQL 库。根据您想要做的事情,例如,如果您想要使用其他一些 Python,那么获取更标准的 PostgreSQL 安装并自己构建 psycopg2 可能会更容易。如果您已经安装了 gcc 等,这非常容易,通常唯一的构建问题是确保它在 libpq 包含文件的正确位置。请参阅 Getting psycopg2 to work on Mac OS X Leopard 和 Installing psycopg2 on OS X 了解一些涵盖您可能遇到的常见构建问题的方法。
【讨论】:
您可以从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 的。
【讨论】: