我在我的电脑上安装了Postgresql 9.1(Win 7).我有一个小的
Java应用程序,使用login = sa和password =“”成功连接到它.连接有效.
但是,它被PgAdmin III本身拒绝了.我明白了:
Error connecting to the server: fe_sendauth: no password supplied
如何使用空密码从PgAdmin III连接到我的数据库?
编辑
这只是一个测试,而不是生产代码.
我可以从pgAdmin III连接到我的postgres实例,无需任何用户的密码,包括postgres等超级用户.
原文链接:https://www.f2er.com/postgresql/192429.html因为您正在从另一个客户端连接ok,所以如果它们位于同一工作站上,则没有理由不能从pgAdmin连接 – 除非客户端本身的某些防火墙规则允许一个程序而不允许另一个程序.
如果问题特定于此客户端,您可能需要更改以下一项或多项:
> pg_hba.conf
host sa all 192.168.0.nnn/32 trust
> postgresql.conf
listen_addresses = '*'
> postgres服务器上的防火墙,例如iptables:
-A INPUT -s 192.168.0.nnn -m state --state NEW -j ACCEPT
但我建议你不要这样做. The manual说明以下原因:
trust authentication is only suitable for TCP/IP connections if you trust every user on every machine that is allowed to connect to the server by the pg_hba.conf lines that specify trust. It is seldom reasonable to use trust for any TCP/IP connections other than those from localhost (127.0.0.1).
相反,请考虑:
>使用密码和md5标识> ssh上的隧道端口5432