TDSQL Boundless 使用数据库连接池连接

连接池的核心价值:解决直连 TDSQL Boundless 带来的连接频繁创建销毁性能损耗、连接数失控、数据库雪崩风险三大核心问题。TDSQL Boundless 完全兼容 MySQL 8.0 协议和语法,所有 MySQL 生态的 JDBC 驱动、数据库连接池都可以无缝对接 TDSQL Boundless。

相关产品
TDSQL Boundless 产品页,含版本规格、价格与购买入口。

一、开发环境依赖

·驱动依赖: 所有连接池均基于 MySQL JDBC 驱动连接 TDSQL Boundless,TDSQL Boundless 无需单独引入驱动包,直接使用 MySQL 驱动即可。

·JDK 版本:JDK8及以上(推荐 JDK8/JDK11)。

二、获取 TDSQL Boundless 标准连接信息

连接 TDSQL Boundless 前,获取以下核心信息:

信息项 示例 说明
JDBC 连接地址 (URL) jdbc:mysql://tdsql-xxxxxx.dns.tdsql.com:3306/your_db_name 连接地址格式与 MySQL 完全一致
用户名 tdsql_user TDSQL Boundless 独立分配的账号,有严格库表权限
密码 TdSql@Pass123 生产环境建议复杂密码,包含大小写 + 特殊字符
驱动类名 com.mysql.cj.jdbc.Driver(MySQL8.x 驱动,推荐)com.mysql.jdbc.Driver(MySQL5.x 驱动) –

三、完整 URL 示例

jdbc:mysql://tdsql-******.dns.tdsql.com:3306/your_db_name?useUnicode=true&characterEncoding=utf8mb4&serverTimezone=Asia/Shanghai&autoReconnect=true&failOverReadOnly=false&rewriteBatchedStatements=true&connectTimeout=3000&socketTimeout=60000

四、参数详细说明

参数 值 作用说明
useUnicode true 启用 Unicode 编码。
characterEncoding utf8mb4 支持完整 Unicode,支持 emoji 表情,避免中文乱码。
serverTimezone Asia/Shanghai 指定东八区,解决 MySQL 8.x 驱动时区异常,TDSQL Boundless 集群跨地域部署时必配。
autoReconnect true TDSQL Boundless 节点在滚动升级,变配,宕机等情况时会自动触发高可用切换,这种情况下会发生连接断开。建议客户端开启自动重连,避免连接失效导致的业务报错。
failOverReadOnly false 
rewriteBatchedStatements true 开启批量 SQL 重写,提升 INSERT/UPDATE 批量操作性能。
connectTimeout 3000 连接建立超时3秒,快速失败,避免线程阻塞。
socketTimeout 60000 连接读写超时60秒,防止慢 SQL 导致连接池耗尽。

五、连接池核心参数

参数类别 HikariCP 参数 Druid 参数 推荐值 说明
连接池大小(最小空闲连接数) minimumIdle minIdle CPU 核心数 × 2 默认5即可,保证连接池有固定的空闲连接,避免频繁创建连接。
最大连接数 maximumPoolSize maxActive 按需配置 –
空闲连接回收时间 idleTimeout maxEvictableIdleTimeMillis 300000ms(5分钟) 回收长时间空闲的连接,释放数据库资源。
连接等待超时时间 connectionTimeout maxWait 3000ms(3秒) 当连接池无可用连接时,业务线程等待的超时时间,快速失败,避免线程阻塞堆积。
赞 (0)
上一篇 4天前
下一篇 4天前