PostgreSQL 15登录异常:输入psql自动调用旧用户chris致认证失败
解决PostgreSQL直接执行
psql自动使用旧用户名的问题 问题原因
直接输入psql时,工具会默认使用当前Windows系统用户名(即chris)作为PostgreSQL登录用户,但你的PostgreSQL 15实例中并未创建该用户,因此触发认证失败。
解决方法
1. 临时指定用户(快速生效)
每次执行psql时显式指定用户名:
psql -U postgres
如果需要指定默认数据库,可补充参数:
psql -U postgres -d postgres
2. 配置psql默认参数(永久生效)
- 在当前用户的Windows主目录下(通常是
C:\Users\chris\,替换为你的实际用户名)创建.psqlrc文件 - 在文件中添加一行配置:
\set USER 'postgres' - 保存文件后,重启PowerShell,直接输入
psql即可自动使用postgres用户登录
3. 设置系统环境变量(永久生效)
- 打开Windows「系统属性」→「高级」→「环境变量」
- 在「用户变量」区域点击「新建」,变量名填
PGUSER,变量值填postgres - 确定后重启PowerShell,
psql会自动读取该环境变量指定的用户
内容的提问来源于stack exchange,提问作者Timothy W. Times
相关产品推荐
相关产品推荐

