首批通过分布式安全可靠测评,为关键业务系统打造
通过 JDBC 连接 OceanBase 数据库,获取连接超时
更新时间:2026-06-03 03:01
本文介绍在应用端通过 JDBC 连接 OceanBase 数据库超时的处理方法。
适用版本
OceanBase 数据库所有版本。
问题现象
在应用端通过 JDBC 连接 OceanBase 数据库错误,错误信息如下。
--- Cause: com.alipay.oceanbase.obproxy.druid.pool.GetConnectionTimeoutException: get connection timeout, maxWait=500ms, maxCount=10, currentCount=11,
可能原因
客户端连接池被占满,导致新的请求无法从 druid 获取空间的连接。出现这种情况可能是由于以下原因:
存在慢 SQL 占用会话。
数据库并发连接数过大。
解决方式
如果是慢 SQL 问题,那么要定位慢 SQL 原因,比如数据库资源是否充足,网络、IO是否有问题。有关排查慢 SQL 的方式,请参见 如何通过参数调整确认慢 SQL。
如果不是慢 SQL 问题,那么评估数据库连接数的水位。
如果
svr_session_count过大,需要调整业务端的最大连接数。obclient> SELECT * FROM information_schema.SESSION_STATUS; +-------------------+----------------+ | VARIABLE_NAME | VARIABLE_VALUE | +-------------------+----------------+ | Threads_connected | 20 | | Uptime | 704793 | +-------------------+----------------+ 2 rows in set (0.00 sec)