1. 修改 postgresql.conf 文件

这个文件包含了PostgreSQL服务器的主要配置选项。你需要编辑此文件以允许远程连接。

  • 打开你的PostgreSQL数据目录。默认情况下,这可能是 C:\Program Files\PostgreSQL\16\data
  • 使用文本编辑器(如Notepad++或Visual Studio Code)打开 postgresql.conf 文件。
  • 查找 listen_addresses 配置项。它可能被注释掉了(即行首有 #)。将其修改为如下形式,以允许所有IP地址的连接请求:
listen_addresses = '*'

如果你只想允许特定的IP地址连接,可以将 * 替换为具体的IP地址或使用逗号分隔多个IP地址。

  • 保存并关闭文件。

2. 修改 pg_hba.conf 文件

这个文件控制着客户端认证方式。你需要添加或修改规则以允许来自特定主机的连接。

  • 在同一个数据目录下,找到 pg_hba.conf 文件,并用文本编辑器打开。
  • 添加一行或多行来定义远程连接的访问规则。例如,要允许来自所有IP地址的连接并且使用scram-sha-256密码认证,你可以添加如下行:
host    all             all             0.0.0.0/0               scram-sha-256

这里的 all 表示允许所有数据库和所有用户,0.0.0.0/0 表示任何IP地址。如果你只希望允许特定IP地址范围的连接,应该替换这个值为相应的CIDR格式的网络地址。

  • 保存并关闭文件。

3. 重启 PostgreSQL 服务

为了使上述更改生效,需要重启PostgreSQL服务。

  • 打开“服务”管理器(可以通过运行 services.msc 命令来打开)。
  • 找到名为 PostgreSQL 16 的服务。
  • 右键点击该服务,选择“重启”。

4. 防火墙设置

确保Windows防火墙或其他网络防火墙没有阻止PostgreSQL的默认端口(通常是5432)。你可能需要创建一个入站规则来允许通过5432端口的流量。

  • 打开“控制面板” -> “系统和安全” -> “Windows Defender 防火墙” -> “高级设置”。
  • 创建一个新的出入站规则,指定协议和端口为TCP,端口号为5432,允许连接。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。