使用psql命令远程连接到Postgres实例

时间:2015-09-28 13:33:28

标签: postgresql psql

我想远程连接到Postgres实例。我知道我们可以使用psql命令传递主机名

我尝试了以下内容:

psql -U postgres -p 5432 -h hostname

我修改了目标计算机上的/etc/postgresql/9.3/main/pg_hba.conf文件以默认允许远程连接

我在文件中添加了以下行

host all all source_ip/32 trust

我使用

重新启动了群集
pg_ctlcluster 9.2 mycluster stop
pg_ctlcluster 9.2 mycluster start

但是,当我尝试从source_ip连接时,我仍然收到错误

  

服务器是否在主机上运行并且在端口5432上接受TCP / IP连接?

我在这里做错了什么?

3 个答案:

答案 0 :(得分:5)

我使用以下选项解决了此问题...

  1. 将网络主机中的数据库主机列入白名单,以确保您可以访问远程主机
  2. 安装postgreSQL版本4或更高版本
  3. 运行以下命令:
psql -h <REMOTE HOST> -p <REMOTE PORT> -U <DB_USER> <DB_NAME>

答案 1 :(得分:3)

psql -h -p <端口号> -d <数据库名称> -U <数据库用户名> -W

-W选项将提示输入密码

psql -h 192.168.1.50 -p 5432 -d testdb -U testuser -W

答案 2 :(得分:2)

我明白了。

必须在listen_addresses='*'中设置postgresql.conf以允许来自任何ip / all ip的传入连接