连接问题的发现及解决
连接问题的发现及解决¶
很多事情都可能阻止客户端应用成功地连接到SeaboxMPP数据库。这个主题解释了一些常见的连接问题 的原因以及如何改正它们。
没有用于主机或者用户的sd_hba.conf配置
-
要允许SeaboxMPP数据库接受远程客户端连接,必须配置SeaboxMPP数据库Coordinator实例的
sd_hba.conf
配置文件,这样客户端或其他数据库访问接口才会被允许连接到SeaboxMPP数据库。 须在sd_hba.conf配置文件(位于Coordinator实例的数据目录中)中增加合适的条目即可,使用seabox config --hbaconf
命令可同时修改所有coordinator实例的配置文件。更多详细的信息请见SeaboxMPP数据库用户认证。
SeaboxMPP数据库没有运行
- SeaboxMPP数据库的Coordinator实例没有运行,用户将无法连接。 用户可以通过在SeaboxMPP的Coordinator节点上运行
seabox status
命令来验证SeaboxMPP数据库系统是否正常运行。 网络问题Interconnect超时
-
如果用户从远程客户端连接到SeaboxMPP的Coordinator主机,网络问题可能阻止连接(例如,DNS主机名解析问题、主机系统没有运行等等)。为了确认网络问题不是原因, 可尝试从远程客户端主机连接到SeaboxMPP的Coordinator主机。例如: ping hostname 。
如果系统不能解析主机名和SeaboxMPP数据库所涉及的主机的IP地址,查询和连接将会失败。 对于某些操作,到SeaboxMPP数据库Coordinator的连接会使用localhost而其他连接使用真实的主机名,因此用户必须能解析两者。如果用户遇到这种错误,首先确认用户能够从Coordinator主机通过网络连接到SeaboxMPP数据库集群中的每一个节点。在所有Coordinator节点和executor节点的/etc/hosts文件中, 确认包含所有节点正确的主机名和IP地址。其中,IP 127.0.0.1 必须解析为localhost。
已有很多客户端连接
- 默认情况下,SeaboxMPP数据库被配置为在Coordinator和每个executor上分别允许最多250和750个并发用户连接。超过该限制后,新的连接尝试将被拒绝。该限制由SeaboxMPP数据库Coordinator实例的max_connections参数控制。 如Coordinator实例上修改该参数,还必须在executor上做出适当的更改。