无法使用pgAdmin将PostgreSQL连接到远程数据库

vin*_*rks 52 postgresql pgadmin

我在本地服务器(Ubuntu)上安装了PostgreSQL,IP为192.168.1.10.现在,我正在尝试使用IP 192.168.1.11和pgAdmin从我的客户机(Ubuntu)访问数据库.

我知道我必须在postgresql.conf和pg_hba.conf中进行更改以允许客户端连接.你能指导我吗?

Sye*_*lam 110

实际上是通过pgAdmin3远程连接到PostgreSQL服务器的3个步骤.

注意:我使用Ubuntu 11.04和PostgreSQL 8.4.

  1. 您必须使PostgreSQL侦听远程传入TCP连接,因为默认设置允许仅侦听环回接口上的连接.为了能够远程访问服务器,您必须将以下行添加到文件中/etc/postgresql/8.4/main/postgresql.conf:

    listen_addresses ='*'

  2. PostgreSQL默认拒绝从任何远程地址接收的所有连接,您必须通过添加此行来放宽这些规则 /etc/postgresql/8.4/main/pg_hba.conf:

    主持所有0.0.0.0/0 md5

    这是一个访问控制规则,如果他可以提供有效密码(md5关键字),任何人都可以从任何地址登录.您可以使用所需的网络/掩码而不是0.0.0.0/0.

  3. 将这些修改应用于配置文件后,需要重新启动PostgreSQL服务器.现在可以使用用户名和密码远程登录您的服务器.

  • 在ubuntu中创建PostgresSQL服务器`sudo /etc/init.d/postgresql stop`和`sudo /etc/init.d/postgresql start`.我用Google搜索了这个.所以在这里为不知道重启服务命令的人添加它 (10认同)
  • 在 RedHat `/var/lib/pgsql/9.4/data/pg_hba.conf` (2认同)

jwf*_*arn 8

如果您使用的是PostgreSQL 8或更高版本,则可能需要修改listen_addresses设置/etc/postgresql/8.4/main/postgresql.conf.

尝试添加该行:

listen_addresses = *
Run Code Online (Sandbox Code Playgroud)

这将告诉PostgreSQL监听所有网络接口上的连接.

如果未明确设置,则此设置默认为localhost表示它仅接受来自同一台计算机的连接.