
# 连接池参数
当使用连接池访问数据库时，在系统运行过程中，数据库连接是被当作对象存储在内存中的，当用户需要访问数据库时，并非建立一个新的连接，而是从连接池中取出一个已建立的空闲连接来使用。用户使用完毕后，数据库并非将连接关闭，而是将连接放回连接池中，以供下一个请求访问使用。
#### pooler_port
**参数说明：**cm_agent、cm_ctl等内部工具运维管理端口，初始化用户或系统管理员通过客户端连接数据库所使用端口。
该参数属于POSTMASTER类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**CN或DN实例的GUC参数"port"值加1。
**默认值：**CN或DN实例的GUC参数"port"默认值加1，CN实例该参数默认值为8001，DN实例该参数默认值为40001。
#### pooler_maximum_idle_time
**参数说明：**Pooler链接自动清理功能使用，当链接池中链接空闲时间超过所设置值时，会触发自动清理机制，清理各节点的空闲链接数到minimum_pool_size。
该参数属于USERSET类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**整型，最小值为0，最大值为2147483647‬，最小单位为秒
**默认值：**10min（即600秒）
#### minimum_pool_size
**参数说明：**Pooler链接自动清理功能使用，自动清理后各pooler链接池对应节点的链接数最小剩余量，当参数设置为0时，可以关闭pooler链接自动清理功能。
该参数属于USERSET类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**整型，最小值为1，最大值为65535
**默认值：**50
#### max_pool_size
**参数说明：**CN的连接池与其它某个CN/DN的最大连接数，当集群规模有变化时，如增加节点、减少节点，可能需要调整该参数。
**参数类型**：整型
**参数单位：**无
**取值范围：**1\~65535
**默认值：**
- 独立部署：
  32768（60核CPU/480G内存）；16384（32核CPU/256G内存）；8192（16核CPU/128G内存）；4096（8核CPU/64G内存）；2048（4核CPU/32G内存）；1000（4核CPU/16G内存）
  
**设置方式：** 该参数属于POSTMASTER类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**设置建议：**按照不同实例规格下的默认值进行设置，该参数值需要大于max_connections，调整时需预留内部线程所消耗的连接。当业务并发高时，会消耗连接池中CN至其他CN/DN的连接，如果该参数配置过小，连接数达到上限时会产生报错，导致业务失败。由于CN启动时，会根据参数值提前申请内存，所以当该参数值变大，系统会消耗更多内存资源，但总体来说对CN内存影响不大。
#### persistent_datanode_connections
**参数说明：**会话是否会释放获得的连接。
该参数属于BACKEND类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**布尔型
- off表示会释放获得连接。
- on表示不会释放获得连接。
  ![](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/public_sys-resources/notice_3.0-zh-cn.png)
  打开此开关后，会存在会话持有连接但并未运行查询的情况，导致其他查询申请不到连接报错。出现此问题时，需约束会话数量小于等于max_active_statements。
  
**默认值：**off
#### max_coordinators
**参数说明：**集群中CN的最大数目，当集群规模有变化时，如增加节点、减少节点，可能需要调整该参数。扩容时，请确保此参数值大于需要扩容到的集群中CN的个数，否则会导致扩容失败。缩容时，若此参数值偏大，CN启动时会消耗更多的内存资源，但总体来说对CN内存影响不大。
**参数类型：**整型
**参数单位：**无
**取值范围：**2\~1024
**默认值：**128
**设置方式：** 该参数属于POSTMASTER类型参数，不建议修改此参数，若需修改，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**设置建议：**按照集群的实际规格进行设置，当该参数小于集群当前CN个数，会导致节点创建失败。由于CN启动时，会根据参数值提前申请内存，所以当该参数值变大，系统会消耗更多内存资源，但总体来说对CN内存影响不大。
#### max_datanodes
**参数说明：**集群中DN的最大数目，当集群规模有变化时，如增加节点、减少节点，可能需要调整该参数。扩容时，请确保此参数值大于需要扩容到的集群中DN总分片数，否则会导致扩容失败。缩容时，若此参数值偏大，CN启动时会消耗更多的内存资源，但总体来说对CN内存影响不大。
**参数类型：**整型
**参数单位：**无
**取值范围：**2-65535
**默认值：**256
**设置方式：** 该参数属于POSTMASTER类型参数，不建议修改此参数，若需修改，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**设置建议：**按照集群的实际规格进行设置，当该参数小于集群当前DN个数，会导致节点创建失败。由于CN启动时，会根据参数值提前申请内存，所以当该参数值变大，系统会消耗更多内存资源，但总体来说对CN内存影响不大。
#### cache_connection
**参数说明：**是否回收连接池的连接。
该参数属于SIGHUP类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**布尔型
- on表示回收连接池的连接。
- off表示不回收连接池的连接。
**默认值：**on
#### enable_force_reuse_connections
**参数说明：**会话是否强制重用新的连接。
该参数属于BACKEND类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**布尔型
- on表示强制使用新连接。
- off表示使用现有连接。
**默认值：**off
#### pooler_connect_max_loops
**参数说明：**pooler建链重试功能使用，主备切换场景增强建链稳定性，若节点间pooler建链失败会跟备机重试建连，此时若恰好备机升主机成功，则可以在重试阶段建链成功。该参数可以设置重试总轮数，增强建链稳定性。当参数设置为0时，可以关闭重试功能，业务只跟主机建链而不跟备机重试。
该参数属于USERSET类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**整型，最小值为0，最大值为20。
**默认值：**1
#### pooler_connect_interval_time
**参数说明：**pooler建链重试功能使用，当参数pooler_connect_max_loops设置大于1时，该参数可以控制不同重试轮数之间执行时间间隔。参数设置方面，建议略大于当前集群主备切换恢复时间即。
该参数属于USERSET类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**整型，最小值为0，最大值为7200，最小单位为秒。
**默认值：**15s
#### pooler_timeout
**参数说明：**CN连接池中的连接与其它CN/DN通讯时的超时时间。
该参数属于SIGHUP类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**整型，最小值为0，最大值为7200，最小单位为秒。
**默认值：**10min
#### pooler_connect_timeout
**参数说明：**CN连接池与集群中其他CN/DN建立连接时的超时时间。
该参数属于SIGHUP类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**整型，最小值为0，最大值为7200，最小单位为秒。
**默认值：**1min
#### pooler_cancel_timeout
**参数说明：**CN连接池在错误处理时Cancel某连接的超时时间。如果在子事务或存储过程异常捕获的过程中发生该类超时，那么包含子事务或存储过程的整个事务将发生回滚。在此基础上，在子事务或存储过程异常捕获的过程中，如果错误源自COPY FROM操作中源数据与目标表表结构的不一致，则只要该参数值不为0，就总会触发超时报错。
该参数属于SIGHUP类型参数，请参考[表2](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/gaussdb-10-0254.html#ZH-CN_TOPIC_0000002235391689__zh-cn_topic_0000001631894377_zh-cn_topic_0237121562_zh-cn_topic_0059777490_t290c8f15953843db8d8e53d867cd893d)中对应设置方法进行设置。
**取值范围：**整型，最小值为0，最大值为7200，最小单位为秒。其中0时（一般不建议）表示关闭此开关，不做超时限制。
**默认值：**15s
