从 DBeaver(在 Windows)访问 PostgreSQL(在 wsl2)失败:"Connection refused: connect"
Accessing PostgreSQL (on wsl2) from DBeaver (on Windows) fails: "Connection refused: connect"
我正在尝试使用 Postgres 并从 DBeaver 访问它。
- Postgres 安装到 wsl2 (Ubuntu 20)
- DBeaver 安装到 Windows10
根据 this doc,如果您从 Windows 访问 Linux 上的应用程序 运行,则可以使用 localhost
。
然而...
localhost
拒绝连接。另外,我不知道这条消息是什么意思:Connection refused: connect
.
有没有人看到这可能的原因?任何建议将不胜感激。
注:
- 密码应该没问题。当我在 wsl2 中使用
psql
并输入密码时, psql
可用密码
- Windows' 我没有 Postgres。它只存在于 wsl2
我自己找到了解决方法。
我只需要在 wsl2(Ubuntu) 上允许 TCP 连接,然后重新启动 postgres。
sudo ufw allow 5432/tcp
# You should see "Rules updated" and/or "Rules updated (v6)"
sudo service postgresql restart
我没有更改 IPv4/IPv6 连接信息。这是我在 pg_hba.conf
:
中看到的
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
我正在尝试使用 Postgres 并从 DBeaver 访问它。
- Postgres 安装到 wsl2 (Ubuntu 20)
- DBeaver 安装到 Windows10
根据 this doc,如果您从 Windows 访问 Linux 上的应用程序 运行,则可以使用 localhost
。
然而...
localhost
拒绝连接。另外,我不知道这条消息是什么意思:Connection refused: connect
.
有没有人看到这可能的原因?任何建议将不胜感激。
注:
- 密码应该没问题。当我在 wsl2 中使用
psql
并输入密码时,psql
可用密码 - Windows' 我没有 Postgres。它只存在于 wsl2
我自己找到了解决方法。
我只需要在 wsl2(Ubuntu) 上允许 TCP 连接,然后重新启动 postgres。
sudo ufw allow 5432/tcp
# You should see "Rules updated" and/or "Rules updated (v6)"
sudo service postgresql restart
我没有更改 IPv4/IPv6 连接信息。这是我在 pg_hba.conf
:
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5