CentOS上PostgreSQL连接失败可按以下步骤排查解决:
systemctl status postgresql 确认服务是否运行,未启动则用 systemctl start postgresql 启动。ping 测试服务器连通性,telnet <IP> 5432 检查端口是否开放。firewall-cmd --add-port=5432/tcp --permanent。postgresql.conf,设置 listen_addresses = '*' 以允许远程连接。pg_hba.conf,添加允许访问的IP规则,如 host all all 0.0.0.0/0 md5。systemctl restart postgresql。GRANT 命令赋予用户远程连接权限,如 GRANT ALL PRIVILEGES ON DATABASE <库名> TO <用户名> WITH GRANT OPTION;。/var/log/postgresql/ 或 /var/lib/pgsql/pgstartup.log,根据错误信息进一步排查。常见错误示例:
listen_addresses 未设为 '*'。pg_hba.conf 中认证方法错误或用户密码不匹配。若以上步骤无效,可提供具体错误信息进一步分析。