【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】OB
【 使用版本 】V4.2.1.9
【问题描述】oceanbase怎么设置最大连接数,连接池参数参数,超时时间,查询缓存等参数
【复现路径】oceanbase怎么设置最大连接数,连接池参数参数,超时时间,查询缓存等参数
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):
【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手 ] 即可召唤小助手,欢迎试用!
论坛小助手
2024 年11 月 1 日 18:30
#3
根据文档库中的信息,您可以按照以下步骤和建议设置 OceanBase 的最大连接数、连接池参数、超时时间和查询缓存等参数 [1] , [2] :
最大连接数
连接池参数
超时时间
查询缓存
OceanBase 社区版目前不支持查询缓存功能。如果您需要实现查询缓存,可以考虑在应用层使用缓存技术,如 Redis 或 Memcached,来缓存查询结果。
示例配置
以下是一个完整的 application.properties
文件示例,展示了如何配置连接池参数:
# Apache Commons DBCP2 Connection Pool
# Database Connection Pool Driver Class Name
db.app.pool.driverClassName=com.mysql.jdbc.Driver
# Database URL
db.app.pool.url=jdbc:mysql://host:port/schema_name?characterEncoding=UTF-8
# Database username
db.app.pool.username=user_name
# Database password
db.app.pool.password=******
# Initial size of connection pool
db.app.pool.initialSize=3
# Maximum number of connections in the connection pool
db.app.pool.maxTotal=10
# Maximum number of idle connections in the connection pool
db.app.pool.maxIdle=20
# Minimum number of idle connections in the connection pool
db.app.pool.minIdle=5
# Maximum wait time for obtaining connections (in milliseconds)
db.app.pool.maxWaitMillis=5000
# Verify the connection's query statement
db.app.pool.validationQuery=select 1
# Minimum evictable idle time (in milliseconds)
db.app.pool.minEvictableIdleTimeMillis=1800000
希望以上信息对您有所帮助。如果您有其他问题或需要进一步的帮助,请随时联系 OceanBase 的人工答疑。
更多信息请查看:
数据库连接规范
Tomcat 连接池连接 OceanBase 数据库示例程序
1 个赞
通过配置文件配置最大连接数,连接池参数参数,超时时间等在哪里配置,比如像mysql可以在my.cnf文件里配置
论坛小助手
2024 年11 月 4 日 09:56
#5
根据文档库中的信息,OceanBase 的配置文件和 MySQL 的配置文件有所不同。在 OceanBase 中,您可以使用以下方法来配置最大连接数、连接池参数和超时时间等参数:
1. 服务器端配置
最大连接数 (max_connections
)
2. 客户端连接池配置
连接池参数
配置文件 :客户端连接池的配置文件通常取决于您使用的具体框架或应用。常见的配置文件包括 application.properties
(Spring Boot)、db.properties
(通用 Java 应用)等。
配置项 :
initialSize
:初始连接数
maxTotal
:最大连接数
maxIdle
:最大空闲连接数
minIdle
:最小空闲连接数
maxWaitMillis
:获取连接的最大等待时间
minEvictableIdleTimeMillis
:连接空闲超时时间
validationQuery
:验证连接的查询语句
removeAbandonedTimeout
:连接被遗弃前的超时时间
removeAbandonedOnMaintenance
:维护时移除被遗弃的连接
removeAbandonedOnBorrow
:借用时移除被遗弃的连接
示例配置
Spring Boot (application.properties
)
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://host:port/schema_name?useSSL=false&characterEncoding=UTF-8
spring.datasource.username=user_name
spring.datasource.password=******
spring.datasource.initial-size=3
spring.datasource.max-active=10
spring.datasource.max-idle=20
spring.datasource.min-idle=5
spring.datasource.max-wait=5000
spring.datasource.validation-query=SELECT 1
spring.datasource.time-between-eviction-runs-millis=60000
spring.datasource.min-evictable-idle-time-millis=1800000
spring.datasource.remove-abandoned=true
spring.datasource.remove-abandoned-timeout=300
spring.datasource.log-abandoned=true
通用 Java 应用 (db.properties
)
driverClassName=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://host:port/schema_name?useSSL=false&characterEncoding=UTF-8
username=user_name
password=******
initialSize=3
maxTotal=10
maxIdle=20
minIdle=5
maxWaitMillis=5000
validationQuery=SELECT 1
timeBetweenEvictionRunsMillis=60000
minEvictableIdleTimeMillis=1800000
removeAbandonedOnMaintenance=true
removeAbandonedOnBorrow=true
removeAbandonedTimeout=300
3. 超时时间
连接超时时间
连接空闲超时时间
总结
服务器端配置 :在 config.ini
文件中配置 max_connections
。
客户端连接池配置 :在应用的配置文件中(如 application.properties
或 db.properties
)配置连接池参数。
希望以上信息对您有所帮助。如果您有其他问题或需要进一步的帮助,请随时联系 OceanBase 的人工答疑。
更多信息请查看:
DBCP 连接池连接 OceanBase 数据库示例程序
数据库连接池配置
(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)
2 个赞
辞霜
2024 年11 月 4 日 10:06
#6
小助手的回复是否符合您的需求呢?
还有什么需要咨询的?