postgresql数据库用户名密码验证失败

问题分析
(1)检查环境变量中是否指定了相关参数,比如:

#export PGUSER=highgo
#export PGDATABASE=highgo
#export PGHOST=localhost
#export PGPORT=5866
#export PGPASSWORD=12345

(2)

pg_hba.conf文件是否设置正确
(3)是否添加密码文件,填写是否正确

解决方案
(1)如果在环境变量中指定了相关的用户密码和数据库则注释或删除掉,source生效【source后如果未成功,su - 退出当前用户重新进入该用户即可】
(2)修改pg_hba.conf文件,pg_ctlreload

# "local" is for Unix domain socket connections only
#该行修改本地登录验证方式
local   all             all                                     trust
# IPv4 local connections:
#该行修改通过Ipv4连接数据库的验证方式
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
该行修改通过Ipv6连接数据库的验证方式
host    all             all             ::1/128                 md5

(3)检查格式

和文件权限,添加要使用的用户及密码
格式:

hostname:port:database:username:password 

范例:

192.168.1.100:5866:highgo:highgo:12345

修改权限:

Chmod 600 .pgpass  

BY 海无涯

你可能感兴趣的:(PostgreSQL)