我遇到了一个奇怪的问题,我无法从Python 3.2安装连接到PostgreSQL。我正在运行Fedora 15,并使用yum从Fedora存储库安装了Python3和PostgerSQL9。有没有人有任何想法,为什么我看到这个问题,以及如何纠正?谷歌搜索没有发现任何东西。无法打开从Python3到PostgreSQL的连接
我已经改变了用户名,密码和数据库,但我的pg_hba.conf文件是正确的。
import postgresql
t = postgresql.open(user='validuser', password='secret', database='some_database')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python3.2/site-packages/postgresql/__init__.py", line 88, in open
c.connect()
File "/usr/lib64/python3.2/site-packages/postgresql/driver/pq3.py", line 2419, in connect
pq = Connection3(sf, startup, password = password,)
File "/usr/lib64/python3.2/site-packages/postgresql/protocol/client3.py", line 514, in __init__
element.Startup(**startup), password
TypeError: keyword arguments must be strings
作为一个方面说明,我得到同样的错误,如果我尝试使用不同的用户名,密码,数据库的组合进行连接,并且如果我使用的是pq://user:[email protected]/database
连接字符串,而不是关键字,既为本地主机和远程主机。
这样做,谢谢! – thetaiko