macOS下PostgreSQL 15.1与pgAdmin 4连接报错:postgres密码验证失败
解决macOS上PostgreSQL 15.1密码认证失败问题
以下是针对FATAL: password authentication failed for user "postgres"报错的具体解决步骤:
1. 确认PostgreSQL服务状态
首先确保服务正在运行:
- 通过系统偏好设置:找到「PostgreSQL 15」图标,查看服务状态,若未启动则点击「Start」。
- 命令行方式:执行
sudo -u postgres pg_ctl status -D /Library/PostgreSQL/15/data,返回server is running则状态正常。
2. 重置postgres用户密码
这是最直接有效的解决方法,步骤如下:
- 停止服务:
系统偏好设置中点击「Stop」,或执行命令:sudo -u postgres pg_ctl stop -D /Library/PostgreSQL/15/data - 修改认证配置文件:
使用管理员权限打开/Library/PostgreSQL/15/data/pg_hba.conf(例如执行sudo nano /Library/PostgreSQL/15/data/pg_hba.conf),将所有包含scram-sha-256或md5的行替换为trust:原行示例:
host all all 127.0.0.1/32 scram-sha-256
修改后:host all all 127.0.0.1/32 trust
同时修改IPv6对应的行(host all all ::1/128 scram-sha-256)为trust。 - 重启服务并重置密码:
启动服务后,执行psql -U postgres直接免密登录,然后执行SQL命令重置密码:ALTER USER postgres WITH PASSWORD '你的新密码'; - 恢复认证配置:
再次打开pg_hba.conf,将trust改回原来的scram-sha-256或md5,重启服务即可。
3. 验证连接参数
- 确保连接时使用的用户名是小写的
postgres(PostgreSQL用户名默认区分大小写)。 - 确认端口为
5432,若存在多个PostgreSQL实例,可通过ps aux | grep postgres查看进程参数中的端口是否匹配。
内容的提问来源于stack exchange,提问作者Anatolii Yarovyi
相关产品推荐
相关产品推荐

