[highgo@node1 data]$ psql -Uplpro -dpostgres
psql: 致命错误: 用户 "plpro" Password 认证失败
一:检查环境变量中是否指定了相关参数,比如:
#export PGUSER=highgo
#export PGDATABASE=highgo
#export PGHOST=localhost
#export PGPORT=5432
#export PGPASSWORD=highgo123
如果在环境变量中指定了相关的用户密码和数据库则注释或删除掉,source生效(需要su - 退出当前用户后重新进入,目的是为了刷新shell的环境 )
二:编辑pg_hba.conf文件
如果是本地主机连接则修改“local”的认证方式修改为trust或者md5,需要注意的是如果连接数据库的用户本身没有指定密码,则使用md5验证方式登陆的时候无论输入什么都会报错的,可以用默认用户登陆数据库ALTER USER user_name wWITH PASSWORD 'XXXXX ';的方式修改用户密码也可以直接指定为trust模式。
# "local" is for Unix domain socket connections only
local all all trust
如果是通过IPv4走的网络路线进行的链接,则要指定相关的IP范围和模式等:
# IPv4 local connections:
host all all 0.0.0.0/0 trust
在做流复制或使用pg_basebackup等工具的特殊情况下也会指定“允许用户使用本地主机进行复制连接”的权限:
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication highgo md5
#host replication highgo 127.0.0.1/32 md5
#host replication highgo ::1/128 md5
host replication all 192.168.1.0/24 trust
三:检查密码文件
有些时候可能会在客户端 $PGHOME目录下创建隐藏的密码文件.pgpass
检查格式和文件权限,添加要使用的用户及密码
格式
hostname:port:database:username:password
范例
192.168.1.100:5432:postgres:postgres:XXXXX
权限
Chmod 600 .pgpass
相关文章
- 关于数据库客户端navicat创建新连接失败的问题
- php连接MySQL8.0版本数据库密码验证失败解决方法(笔记) The server requested ... to the client [caching_sha2_password]...
- 关于Eclipse在servlet中连接数据库时出现驱动加载失败的解决
- 我在win7系统下通过MyEclipse连接数据库,用用户sa的sql认证可以连接,但用windows nt认证则失败
- 关于psql连接数据库Password认证失败
- 关于Navicat for MySQL破解,以及连接数据库出现错误:1045-Access denied for user 'root'@'localhost'( using password yes)解决方法
- psql: 致命错误: 用户 "ASUS" Password 认证失败
- 关于Navicat for MySQL破解,以及连接数据库出现错误:1045-Access denied for user 'root'@'localhost'( using password yes)解决方法
- java连接数据库失败:java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)