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

Mac本地环境下Metabase无法连接PostgreSQL问题求助

解决Metabase连接本地PostgreSQL失败(UnknownHostException)的方案

你用psql能正常连接说明PostgreSQL服务本身没问题,问题大概率出在网络配置或Metabase的连接逻辑上,试试下面这些针对性步骤:

1. 检查PostgreSQL的监听地址配置

打开PostgreSQL的postgresql.conf文件(Mac上Homebrew安装的话,路径通常是/usr/local/var/postgres/;官方安装包则在/Library/PostgreSQL/<你的版本>/data/),找到listen_addresses参数:

  • 确保它设置为'*',或者明确包含127.0.0.1和localhost,比如:
    listen_addresses = 'localhost,127.0.0.1'
    

修改后重启PostgreSQL服务:

brew services restart postgresql  # Homebrew安装的用这个
# 或者用系统服务命令
sudo launchctl stop homebrew.mxcl.postgresql
sudo launchctl start homebrew.mxcl.postgresql

2. 尝试Unix Socket连接(Mac专属方案)

Mac上PostgreSQL默认开启Unix Socket,绕过TCP/IP解析问题:

  • 在Metabase连接配置里,主机字段留空,或者直接填/tmp(PostgreSQL的socket默认路径是/tmp/.s.PGSQL.5432)
  • 端口保持5432,输入数据库名、用户名、密码后重试连接

3. 排查防火墙与代理干扰

  • 临时关闭Mac防火墙:系统偏好设置 → 安全与隐私 → 防火墙 → 关闭,测试是否能连接
  • 关闭本地代理工具(如Charles、Clash等),这类工具可能拦截Metabase的本地网络请求

4. 确认PostgreSQL的访问控制规则

打开pg_hba.conf(和postgresql.conf同目录),确保存在允许本地连接的规则:

  • 检查以下行是否存在且未被注释:
    host    all             all             127.0.0.1/32            scram-sha-256
    host    all             all             ::1/128                 scram-sha-256
    local   all             all                                     scram-sha-256
    

修改后重启PostgreSQL服务

5. 重置Metabase连接缓存

如果之前多次错误配置导致缓存异常:

  • 关闭Metabase应用,找到它的缓存目录(Mac默认是~/Library/Application Support/Metabase/)
  • 备份后删除metabase.db.mv.db和metabase.db.trace.db文件,重新启动Metabase并配置连接

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 18:01:25