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

Vagrant Homestead连接PostgreSQL出现连接拒绝报错如何排查

PostgreSQL连接拒绝排查步骤

  • 第一步:确认PostgreSQL服务运行状态
    先执行vagrant ssh登录Homestead虚拟机,运行命令sudo systemctl status postgresql查看服务状态。如果服务未启动,执行sudo systemctl start postgresql启动服务,可额外执行sudo systemctl enable postgresql设置开机自启。
  • 第二步:校验PostgreSQL监听配置
    打开配置文件/etc/postgresql/[你的PG版本号]/main/postgresql.conf,找到listen_addresses配置项:
    • 如果你是在虚拟机内部连接,确保值为'localhost'或者'127.0.0.1'
    • 如果你是从宿主机连接虚拟机内的PG,需要将值改为'*'允许所有地址监听,或者指定宿主机的访问IP
  • 第三步:校验访问控制规则
    打开同目录下的pg_hba.conf文件,确认你的连接来源IP、用户名对应的访问规则是允许状态:
    • 本地连接可以配置为local all all md5
    • 宿主机连接可新增规则host all all 192.168.10.1/24 md5(适配Homestead默认宿主机网段)
      配置修改完成后执行sudo systemctl restart postgresql重启服务生效。
  • 第四步:确认端口监听状态
    虚拟机内执行sudo ss -tulpn | grep 5432,确认有PostgreSQL进程在5432端口监听。如果服务配置了非默认端口,连接时需要额外指定端口参数。
  • 第五步:宿主机连接特殊校验
    如果是从宿主机发起连接:
    • 不要使用localhost作为连接地址,改为Homestead虚拟机默认IP 192.168.10.10
    • 确认Vagrantfile中已配置5432端口转发:config.vm.network "forwarded_port", guest: 5432, host: 5432,修改配置后需要执行vagrant reload重启虚拟机生效
  • 第六步:校验连接参数
    Homestead环境PostgreSQL默认账号密码均为homestead,默认数据库名为homestead,标准连接命令参考:psql -h 192.168.10.10 -U homestead -d homestead

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 06:27:02