![首次在 Windows Server 上安装 PostgreSQL - 如何启用/测试远程访问?](https://linux22.com/image/750352/%E9%A6%96%E6%AC%A1%E5%9C%A8%20Windows%20Server%20%E4%B8%8A%E5%AE%89%E8%A3%85%20PostgreSQL%20-%20%E5%A6%82%E4%BD%95%E5%90%AF%E7%94%A8%2F%E6%B5%8B%E8%AF%95%E8%BF%9C%E7%A8%8B%E8%AE%BF%E9%97%AE%EF%BC%9F.png)
我正在 Windows 2008r2 Server 上安装 PostgreSQL,打算通过 ODBC 与 Delphi 7 应用程序一起使用。
我关注了PostgreSQL 12.2 文档 不需要像第 17 章中描述的那样从源代码安装,我选择了链接到的安装程序 按照安装指南(安装程序) 我顺利完成了安装过程。
重新启动服务器后,我可以看到服务 postgresql-12-x64 正在运行。
我创建了用户 postres,并且能够使用 runas 启动命令行:
c:\>runas /user:postgres "C:\Program Files\PostgreSQL\12\bin\psql.exe"
Enter the password for postgres:
Attempting to start C:\Program Files\PostgreSQL\12\bin\psql.exe as user "****\postgres" ...
安装程序显然没有更新路径,因此我不得不提供完整路径。现在我在服务器上有一个带有 postgres-# 提示符的命令窗口。
接下来,我想验证我是否可以从另一台机器连接到服务器。 我发现的帖子说使用如下命令:
psql -h SERVER-IP -U postgres
但是,psql.exe 安装在服务器上,而不是客户端计算机上。可以从客户端运行哪个“测试”可执行文件来验证它是否能够与服务器通信?是否只需将 psql.exe 从服务器的 C:\Program Files\PostgreSQL\12\bin 文件夹复制到客户端上的临时文件夹即可?我试过,psql.exe 关闭时没有任何输出或错误指示:
H:\temp>ping 192.168.2.1
Pinging 192.168.2.1 with 32 bytes of data:
Reply from 192.168.2.1: bytes=32 time<1ms TTL=128
^C
H:\temp>psql -h 192.168.2.1 -U postgres
H:\temp>