如何启用远程连接以使用PostgreSQL?

问题描述 投票:0回答:1

我在Azure上有两个虚拟机,我们称它们为test1和test2。

postgresql-server已安装并在test1(服务器,postgres用户所在的服务器)上运行,但我希望能够在test2(目标)上使用psql。

到目前为止,我已经编辑了pg_hba.conf,以在其主机列表中包含目标的IP地址:


# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
host    all             all             XX.XXX.XX.XXX/32        trust

其中XX.XXX.XX.XXX是目标计算机的公共IP地址,test2

然后,我编辑了postgresql.conf文件,以侦听所有地址,而不仅仅是本地主机:

listen_addresses = '*'          # what IP address(es) to listen on;
                                        # comma-separated list of addresses;
                                        # defaults to 'localhost'; use '*' for all
                                        # (change requires restart)
port = 5432 

我在主机服务器上重新加载服务器以获取更改:

pg_ctl -D /path/to/data/ -l logfile reload

据我所研究,现在我应该能够进行test2了,并且只需运行以下命令即可:

psql -h 127.0.0.1 -U postgres -p 5432

但是无论何时,我都会得到:

-bash: psql: command not found

发生了什么???此外,由于无法连接到数据库,因此与Hive数据库的测试连接(已设置)仍会失败。

linux postgresql networking ambari
1个回答
0
投票

正如伊斯林格评论:

在目标(test2)上安装postgresql,允许我运行:

psql -h test1ip -p 5432

有效。

© www.soinside.com 2019 - 2024. All rights reserved.