
# Hive客户端执行SQL报错连接超时
#### 现象描述
Hive客户端执行SQL失败，报错：Timed out waiting for a free available connection。
#### 可能原因
DBService连接较多，获取连接超时。
#### 操作步骤
1. 客户端是否使用Spark-SQL客户端执行SQL。 
   - 是，检查连接的URL中超时参数，将其修改为600，执行[7]。
   
   - 否，执行[2]。
   
   
   
   
2. 登录Manager页面，选择"集群 \> 服务 \> Hive \> 配置 \> 全部配置"，搜索"javax.jdo.option.ConnectionURL"，检查超时参数是否小于600。
   
   ![](https://support.huaweicloud.com/trouble-mrs/zh-cn_image_0000001378917546.png "点击放大")
   ![](https://support.huaweicloud.com/trouble-mrs/public_sys-resources/note_3.0-zh-cn.png)
   Hive、HiveServer、MetaStore、WebHCat中均有该参数，请确保它们的参数值一致。
   - 是，执行[3]。
   
   - 否，执行[7]。
    
   
   
3. 检查参数"javax.jdo.option.ConnectionURL"的值是否为"${javax.jdo.option.ConnectionURL.default}"。
   
   - 是，执行[4]。
   
   - 否，修改URL中超时参数为600，单击"保存"，执行[7]。
   
   
   
   
4. 单击"实例"，选择任意HiveServer实例，并使用**root**用户登录实例节点。
5. 打开配置文件"${BIGDATA_HOME}/FusionInsight_Current/\*HiveServer/etc/hivemetastore-site.xml"，查找配置项"javax.jdo.option.ConnectionURL"，复制配置项值。
   
   ![](https://support.huaweicloud.com/trouble-mrs/zh-cn_image_0000001379077082.png "点击放大")
   
   
6. 登录Manager页面，选择"集群 \> 服务 \> Hive \> 配置 \> 全部配置"，搜索"javax.jdo.option.ConnectionURL"，修改配置为[5]中复制的URL，并修改超时参数为600，单击"保存"。
   
   ![](https://support.huaweicloud.com/trouble-mrs/public_sys-resources/note_3.0-zh-cn.png)
   Hive、HiveServer、MetaStore、WebHCat中均有该参数，请确保它们的参数值一致。
   
   
7. 选择"集群 \> 服务 \> Hive \> 配置 \> 全部配置"，搜索"maxConnectionsPerPartition"，检查是否小于100。
   
   - 是，修改参数为100，单击"保存"，执行[8]。
   
   - 否，执行[8]。
   
   
   
   
8. 若以上步骤有修改参数，选择"集群 \> 服务 \> Hive \> 概览"，选择"更多 \> 滚动重启服务"，未修改则无需执行此步骤。
 
