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

PostgreSQL密码文件的设置

发布时间:2020-12-13 18:23:16 所属栏目:百科 来源:网络整理
导读:在进行远程备份或者登录时要手工输入密码,总是一件麻烦的事情。不过PG提供了一个简单的方法,那就是用密码文件的方式。这点PG和GP是相同的。 Linux下密码文件可在home路径下新建一个名为.pgpass的文件或者引用一个PGPASSFILE文件。 Windows下密码文件一般放

在进行远程备份或者登录时要手工输入密码,总是一件麻烦的事情。不过PG提供了一个简单的方法,那就是用密码文件的方式。这点PG和GP是相同的。

Linux下密码文件可在home路径下新建一个名为.pgpass的文件或者引用一个PGPASSFILE文件。

Windows下密码文件一般放的位置是%APPDATA%postgresqlpgpass.conf,

比如C:Documents and SettingsAdministratorApplication Datapostgresql

密码文件有一个约定格式:

# regular syntax
#hostname:port:database:username:password

示例:

客户端IP:172.25.30.1

服务端IP:172.25.30.88 DB:test User:chenlq PWD:chenlq

首先在客户端创建密码文件

[postgres@localhost ~]$ vi /home/postgres/.pgpass

然后给个只读权限即可。

[postgres@localhost ~]$ chmod 400 .pgpass
[postgres@localhost ~]$ ls -al .pgpass
-r-------- 1 postgres postgres 93 03-07 15:25 .pgpass

然后往该文件中加服务端的连接信息

172.25.30.88:2012:test:chenlq:chenlq

[postgres@localhost ~]$ more .pgpass
# regular syntax
#hostname:port:database:username:password
172.25.30.88:2012:test:chenlq:chenlq

接下来在服务端的访问控制文件(pg_hba.conf)中也添加客户端的一些信息

hosttestchenlq 172.25.30.1/32 md5

在服务端没有reload的时候我们发现,客户端连接时是要求输入密码的,

[postgres@localhost ~]$ psql -h 172.25.30.88 -dtest -U chenlq

Password for user chenlq:

reload一下

pg_ctl reload -D $PGDATA

客户端重新登录,OK了,不用输密码了。

[postgres@localhost ~]$ psql -h172.25.30.88 -dtest -U chenlq

psql (9.1.2)
Type "help" for help.

test=#

(编辑:李大同)

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

    推荐文章
      热点阅读