You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从Windows端DBeaver连接WSL2中PostgreSQL提示Connection refused问题

报错含义解释

Connection refused: connect 代表你的DBeaver请求已经发送到指定地址的对应端口,但目标端口没有服务在监听,或服务配置了访问规则直接拒绝了本次连接请求。

常见问题原因
  • PostgreSQL默认仅监听WSL2内部的回环地址127.0.0.1,未对外开放监听端口,Windows侧的请求无法触达PostgreSQL服务
  • PostgreSQL的访问控制配置未放行Windows侧的IP网段,即使请求到达服务也会被直接拒绝
  • WSL2内置网络映射规则异常,localhost转发未生效
  • WSL2 Ubuntu系统的防火墙未放行PostgreSQL默认的5432端口
解决方案

步骤1:修改PostgreSQL监听配置

在WSL2 Ubuntu中找到PostgreSQL配置文件,默认路径为/etc/postgresql/<pg版本号>/main/postgresql.conf,例如14版本路径为/etc/postgresql/14/main/postgresql.conf。
修改配置项:

listen_addresses = '*'

保存后退出编辑器。

步骤2:修改访问控制规则

在同目录下找到pg_hba.conf文件,在文件末尾新增如下行,放行所有IPv4地址的访问请求:

host    all             all             0.0.0.0/0            scram-sha-256

如果你的PostgreSQL用的是md5加密方式,将最后的scram-sha-256替换为md5即可。

步骤3:重启PostgreSQL服务

执行命令让配置生效:
sudo service postgresql restart

步骤4:放行系统端口

如果你的WSL2 Ubuntu开启了ufw防火墙,执行命令放行5432端口:
sudo ufw allow 5432/tcp

步骤5:配置DBeaver连接

如果localhost仍无法连接,在WSL2中执行ip a show eth0,查询eth0网卡的inet网段IP(通常为172开头的地址),在DBeaver连接配置中使用该IP作为主机地址,端口默认填5432即可正常连接。

内容的提问来源于stack exchange,提问作者Hiroki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 22:36:04