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

Linux 如何启用远程连接以使用PostgreSQL?,linux,postgresql,networking,ambari,Linux,Postgresql,Networking,Ambari,我在Azure上有两个vm,让我们称它们为test1和test2 postgresql server安装并运行在test1(服务器,postgres用户所在的位置)上,但我希望能够在test2(目标)上使用psql 到目前为止,我已经编辑了pg_hba.conf,将目标的IP地址包含在其主机列表中: # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix doma

我在Azure上有两个vm,让我们称它们为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文件,以侦听所有地址,而不仅仅是localhost:

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
发生了什么事???此外,与配置单元数据库(已设置)的测试连接不断失败,因为它无法连接到数据库

正如Islingre所评论的:

在目标系统(test2)上安装postgresql使我能够运行:

psql -h test1ip -p 5432

它成功了。

您现在可能可以连接到服务器,但您仍然需要机器
test2
上的客户端(在您的情况下是
psql
)。安装后再试一次谢谢!在test2上安装postgresql(不是postgresqlserver),允许我运行
psql-htest1ip-p5432