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

如何使用Gorm连接PostgreSQL?解决postgres用户密码认证失败问题

排查Gorm连接PostgreSQL时的"password authentication failed"错误

针对你遇到的FATAL: password authentication failed for user "postgres" (SQLSTATE 28P01)错误,结合你的代码,主要排查方向如下:

  • DSN未包含密码参数
    你的代码里的DSN字符串缺少密码字段,PostgreSQL默认要求postgres用户通过密码认证。修改DSN,补充password参数:
dsn := "host=localhost user=postgres password=你的实际密码 dbname=postgres port=5432 sslmode=disable TimeZone=Asia/Tokyo"
  • 验证密码正确性
    用PostgreSQL自带的psql工具直接测试连接,确认密码是否有效:
psql -U postgres -d postgres -h localhost -p 5432

输入密码后如果无法进入数据库,说明密码错误,需要重置postgres用户密码。

  • 检查PostgreSQL认证配置
    找到PostgreSQL的pg_hba.conf配置文件(路径因系统而异:Linux通常在/var/lib/postgresql/{版本号}/main/,Windows在安装目录的data文件夹),查看本地连接的认证规则:

确保针对127.0.0.1/32或::1/128的连接,认证方式为md5或scram-sha-256,而非peer或ident(这两种依赖系统用户认证,不使用密码)

修改配置后,重启PostgreSQL服务使更改生效。

  • 确认服务状态与端口占用
    检查PostgreSQL服务是否正常运行,同时确保5432端口未被其他程序占用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 12:30:58