加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

postgresql – Postgres pgpass windows – 无法正常工作

发布时间:2020-12-13 16:08:47 所属栏目:百科 来源:网络整理
导读:DB:Postgres 9.0 客户端: Windows 7 服务器Windows 2008,64位 我正在尝试远程连接到postgres实例,以便为我的本地计算机执行pg_dump. 一切都在我的客户端机器上工作,除了我需要在密码提示符下提供密码,我最终想用脚本批量处理它. 我按照这里的说明操作: ht
DB:Postgres 9.0
客户端: Windows 7
服务器Windows 2008,64位

我正在尝试远程连接到postgres实例,以便为我的本地计算机执行pg_dump.

一切都在我的客户端机器上工作,除了我需要在密码提示符下提供密码,我最终想用脚本批量处理它.

我按照这里的说明操作:

http://www.postgresql.org/docs/current/static/libpq-pgpass.html

但它不起作用.

回顾一下,我在服务器上创建了一个文件:C:/Users/postgres/AppData/postgresql/pgpass.conf,其中postgresql是db用户.

该文件有一行包含以下数据:

*:5432:*postgres:[mypassword]

我也尝试分别用[localhost | myip]和[mydatabasename]替换每个*.

从我的客户端机器,我连接使用:

pg_dump -h <myip> -U postgres -w [mydbname] > [mylocaldumpfile]

我假设我需要提供-w开关以忽略密码提示,此时它应该在服务器上的AppData目录中查找.

它回来了:

connection to database failed: fe_sendauth: no password supplied.

任何见解都表示赞赏.

作为一个黑客解决方法,如果有一种方法,我可以告诉我的客户端机器上的Windows批处理文件在postgres提示符下注入密码,这也可以.

谢谢.

解决方法

我已经解决了类似的问题(仅在Linux中)在pgpass和psql中使用ip地址.

.pgpass

127.0.0.1:5432:db:dbuser:123

psql参数

psql -d db -U dbuser -h 127.0.0.1 -w

pg_hba conf默认设置:

# IPv4 local connections:
84 host    all         all         127.0.0.1/32          md5

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读