【发布时间】:2023-03-24 10:34:01
【问题描述】:
如何从远程计算机连接到 Azure PostgreSQL 数据库?
更新 2。 我可以使用 sudo psql 从 WSL/Ubuntu 连接到数据库,但我不能使用普通的 psql。所以这是某个地方的权限问题......
更新。我发现我可以使用 PgAdmin4 从远程计算机进行连接,但我无法使用 psql 进行连接。所以我想知道:我应该如何使用 psql 连接?
原始问题。我可以从 Azure 中的 VM 使用 psql 连接到它,因此我知道数据库已启动并正在接受连接。
但是当我尝试从我的家用机器连接时,使用完全相同的psql 命令,它失败了:
psql --user=UUU --host=HHH DB
psql: server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
更多信息... 在 Azure 数据库的“连接安全”刀片上,我有
- 添加了一条防火墙规则,起始 IP=0.0.0.0,结束 IP=255.255.255.255
- 将“强制 SSL 连接”设置为禁用
- 打开了“允许访问 Azure 服务”。
我的家用机器正在运行 Windows+WSL,我正在尝试从 WSL / Ubuntu 18.04 进行连接
使用 psql 版本 10.11。无论我尝试从家里还是从工作中连接,我都会遇到同样的问题,而且我没有阻止任何传出端口(我知道)。
数据库正在运行 PostgreSQL 10。
当我使用psql 10.10 从 Azure VM 连接(成功)时,它看起来像这样:
psql --user=UUU --host=HHH DB
Password for user UUU:
psql (10.10 (Ubuntu 10.10-0ubuntu0.18.04.1))
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
【问题讨论】:
-
能否请您转到“Azure Database for PostgreSQL 服务器 - 服务器日志”刀片并检查尝试从 WSL 主机连接时发生了什么?
-
当我尝试从我的 WSL 主机连接时,服务器日志中根本没有添加任何内容。当我从 Azure VM 连接时,日志中出现正常的“已收到连接,已授权连接”行。
-
你有没有试过不使用 psql 而是使用 PgAdmin4 之类的东西?如果没有,请您尝试一下并分享详细信息吗?
-
我刚刚安装了 PgAdmin4(有史以来第一次)并且它工作了——我可以从我的本地计算机连接!所以这一定与我使用 psql 的方式有关......
-
我刚刚尝试使用 PgAdmin4 附带的 psql 从本地计算机进行连接。效果很好。
标签: azure azure-virtual-network azure-database-postgresql