---
title: github-fill
description: 数据库连接池配置 本文主要对连接池的配置参数，包括 ZDAL 参数、Druid 参数、DBCP 参数、C3P0 参数以及 JDBC 参数等进行介绍。 数据源配置参数 参数含义 说明 ZDAL 参数 Druid 参数 DBCP 参数 C3P0 参数 初始化连接数 连接池初始化时建立连接数。 prefill=true 初…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.2.1 LTS

# 数据库连接池配置

更新时间：2026-07-15 22:01:30

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.2.1/zh-CN/300.develop/200.application-development-of-oracle-mode/100.connect-to-oceanbase-database-of-oracle-mode/1300.use-the-database-connection-pool-of-oracle-mode/100.database-connection-pool-configuration-of-oracle-mode.md)  

本文主要对连接池的配置参数，包括 ZDAL 参数、Druid 参数、DBCP 参数、C3P0 参数以及 JDBC 参数等进行介绍。

## 数据源配置参数

| 参数含义 | 说明 | ZDAL 参数 | Druid 参数 | DBCP 参数 | C3P0 参数 |
| --- | --- | --- | --- | --- | --- |
| 初始化连接数 | 连接池初始化时建立连接数。 | prefill=true 初始化到 minConn | initialSize(0) | initialSize(0) | initialPoolSize(3) |
| 最小连接数 | 最小可使用连接数，这个会让连接池日常一直保留着这么多个链接。 | minConn(0) | minIdle(0) | minIdle(0) | minPoolSize(3) |
| 最大连接数 | 最大可使用连接数，超过这个连接池会抛连接池已满异常。 | maxConn(10) | maxActive(8) | maxActive(8) | maxActive(8) |
| 链接空闲超时时间 | 设置链接空闲时间一段时间不用时，连接池主动断开链接。MySQL 默认 8 小时断开链接，主备切换时链接会变成脏连接。如果没有这个机制，可能会导致请求失败。云上 OOceanBase SLB 超时时间 15 分钟，可以将超时时间设置为 12 分钟。 | idleTimeoutMinutes(30min) | minEvictableIdleTimeMillis(30min) | minEvictableIdleTimeMillis(30min) 需要设置 timeBetweenEvictionRunsMillis(-1) > 0 才会生效，该参数控制异步检查周期 | maxIdleTime(0 表示不超时) |
| 连接池获取链接的超时时间 | 如果设置太大的话，链接池满了会导致应用响应太慢。 | blockingTimeoutMillis(500ms) | maxWait(-1 表示不超时) | maxWaitMillis(-1 表示不超时) | checkoutTimeout(0 表示不超时) |
| 连接获取不释放超时时间 | 超时这个时间的话，连接一直没有放回连接池会被直接销毁掉。可以防止连接泄露，但是会影响事务使用时间限制。 | 无 | removeAbandonedTimeoutMillis(300s) | removeAbandonedTimeout(300s) | 无 |

## JDBC 配置参数

JDBC 重要的几个参数，一定需要设置。均可以设置到连接池的 ConnectionProperties 中，或者 JdbcUrl 上。具体参数及其说明如下表所示。

| 参数 | 说明 |
| --- | --- |
| socketTimeout | 定义了网络 Socket 超时，以毫秒为单位。值为 0 时，表示没有超时限制。也可以通过设置系统变量 `max_statement_time` 来限制查询时间。 默认值：0（标准配置）。 |
| connectTimeout | 连接超时值，以毫秒为单位。值为 0 时，表示没有超时限制。默认值：30000。 |

## 连接池设置建议

- 管控台日常 min 保持两个连接即可，具体根据业务并发及事务时间来调整。
 - 设置连接空闲超时时间 ，推荐 30 分钟。

  MySQL 默认 8 小时连接主动断开，客户端无法感知，导致存在脏连接。连接池可以通过心跳、testOnBorrow 等机制来校验连接是否存活，当超过这个时间连接没有使用直接断开。

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
