连接问题的发现及解决

连接问题的发现及解决

很多事情都可能阻止客户端应用成功地连接到Greenplum数据库。这个主题解释了一些常见的连接问题的原因以及如何改正它们。

表 1. 常见连接问题
问题 解决方案
没有用于主机或者用户的pg_hba.conf条目 要允许Greenplum数据库接受远程客户端连接,用户必须配置用户的Greenplum数据库的Master实例,这样来自于客户端主机和数据库用户的连接才会被允许连接到Greenplum数据库。这可以通过在pg_hba.conf配置文件(位于Master实例的数据目录中)中增加合适的条目就能做到。更多详细的信息请见允许到Greenplum的连接
Greenplum数据库没有运行 Greenplum数据库的Master实例没有运行,用户将无法连接。用户可以通过在Greenplum的Master主机上运行gpstate工具来验证Greenplum数据库系统是否正常运行。
网络问题

Interconnect 超时

如果用户从一个远程客户端连接到Greenplum的Master主机,网络问题可能阻止连接(例如,DNS主机名解析问题、主机系统没有运行等等)。为了确认网络问题不是原因,可尝试从远程客户端主机连接到Greenplum的Master主机。例如: ping hostname .

如果系统不能解析主机名和Greenplum数据库所涉及的主机的IP地址,查询和连接将会失败。对于某些操作,到Greenplum数据库Master的连接会使用localhost而其他连接使用真实的主机名,因此用户必须能解析两者。如果用户遇到这种错误,首先确认用户能够从Master主机通过网络连接到Greenplum数据库阵列中的每一台主机。在Master和所有Segment的/etc/hosts文件中,确认有Greenplum数据库阵列所涉及所有主机的正确的主机名和IP地址。IP 127.0.0.1必须解析为localhost

已有太多客户端 默认情况下,Greenplum数据库被配置为在Master和每个Segment上分别允许最多250和750个并发用户连接。导致该限制会被超过的连接尝试将被拒绝。这个限制由Greenplum数据库Master的postgresql.conf配置文件中的max_connections参数控制。如果用户为Master更改了这个设置,用户还必须在Segment上做出适当的更改。