The connection pool within a JDBC data source contains a group of JDBC connections that applications reserve, use, and then return to the pool. The connection pool and the connections within it are created when the connection pool is registered, usually when starting up WebLogic Server or when deploying the data source to a new target.
Use this page to define the configuration for this data source's connection pool.
JDBC 数据源中的连接缓冲池包含一组 JDBC 连接,应用程序保留、使用这些连接,然后将其返回缓冲池。连接缓冲池及其中的连接是在注册此连接缓冲池时(通常在启动 WebLogic Server 或将数据源部署到新的目标时)创建的。
使用此页可以定义该数据源的连接缓冲池的配置。
Configuration Options
名称 |
描述 |
URL |
要连接到的数据库的 URL。URL 的格式随 JDBC 驱动程序的不同而变化。 将 URL 传递给 JDBC 驱动程序以创建物理数据库连接。 MBean 特性 (不适用于应用程序模块): JDBCDriverParamsBean.Url 更改将在重新部署模块或重新启动服务器后生效。 |
Driver Class Name 驱动程序类名称 |
用于在连接缓冲池中创建物理数据库连接的 JDBC 驱动程序类的完整包名。(请注意,此驱动程序类必须存在于将其部署到的任何服务器的类路径中。)
MBean 特性 (不适用于应用程序模块): JDBCDriverParamsBean.DriverName 更改将在重新部署模块或重新启动服务器后生效。 |
Properties 属性 |
传递给创建物理数据库连接时使用的 JDBC 驱动程序的属性的列表。例如:server=dbserver1。请分别在单独的行上列出各个 property=value 对。
要启用驱动程序级功能,请将驱动程序属性及其值添加到“属性”列表。WebLogic Server 设置驱动程序的 ConnectionPoolDataSource 对象上的“属性”列表中的驱动程序级属性。
MBean 特性 (不适用于应用程序模块): JDBCDriverParamsBean.Properties 更改将在重新部署模块或重新启动服务器后生效。 |
Password 密码 |
创建物理数据库连接时传递给 JDBC 驱动程序的密码属性。 该值以加密形式存储在描述符文件及显示在“管理控制台”中。 MBean 特性 (不适用于应用程序模块): JDBCDriverParamsBean.Password 更改将在重新部署模块或重新启动服务器后生效。 |
lnitial Capacity 初始容量 |
要在创建连接缓冲池时创建的物理连接数。 如果无法创建这一数量的连接,创建此连接缓冲池的操作将会失败。此连接数也是连接缓冲池将保持的最小可用物理连接数。 最小值: |
Maximum Capacity 最大容量 |
此连接缓冲池可容纳的最大物理连接数。 |
Capacity Increment 容量增长 |
将新连接添加到连接缓冲池时创建的连接数。
不再有可用的物理连接来满足连接请求时,WebLogic Server 会创建该数量的附加物理连接并将它们添加到连接缓冲池中。MBean 特性 (不适用于应用程序模块): JDBCConnectionPoolParamsBean.CapacityIncrement 最小值: |
Statement Cache Type 语句缓存类型 |
用于维护存储在语句缓存中的准备就绪的语句的算法。
选项有:
MBean 特性 (不适用于应用程序模块): JDBCConnectionPoolParamsBean.StatementCacheType |
Statement Cache Size 语句缓存大小 |
存储在缓存中的预处理语句和可调用语句的数量。(这样可能会提高服务器性能。)
WebLogic Server 可以重用缓存中的语句而无需重新加载它们,这样便可提高服务器性能。连接缓冲池中的每个连接都有其自己的语句缓存。 将语句缓存的大小设置为 0 将会关闭该语句缓存。 MBean 特性 (不适用于应用程序模块): JDBCConnectionPoolParamsBean.StatementCachSize 最小值: 最大值: |
Advanced Configuration Options
高级配置选项
Name 名称 |
Description 描述 |
Test Table Name |
测试物理数据库连接时使用的数据库表名。指定“测试频率”和启用“测试保留的连接数”时需要此名称。 用于测试连接的默认 SQL 代码为 大多数数据库服务器会优化此 SQL 以避免对表进行扫描,但仍然建议将“测试表名称”设置为已知包含极少的行或不包含行的表的名称。 如果“测试表名称”以 MBean 特性 (不适用于应用程序模块): JDBCConnectionPoolParamsBean.TestTableName |
Init SQL 初始 SQL |
要执行的、将初始化新建物理数据库连接的 SQL 语句。以 SQL 后跟一个空格作为语句的开头。
如果“初始 SQL”值以 表 MBean 特性 (不适用于应用程序模块): JDBCConnectionPoolParamsBean.InitSql 更改将在重新部署模块或重新启动服务器后生效。 |
Test Connections On Reserve 保留时测试连接 |
使 WebLogic Server 能够在将连接提供给客户端之前对连接进行测试。(要求指定“测试表名称”。)
此测试在响应客户端对缓冲池中的连接的请求时将添加短时间的延迟,但会确保客户端收到有效连接。 对于使用 更改将在重新部署模块或重新启动服务器后生效。 |
Test Frequency 测试频率 |
WebLogic Server 对未用连接进行测试的间隔秒数。(要求指定“测试表名称”。)未通过测试的连接将被关闭,然后将它们重新打开以重新建立有效的物理连接。如果测试再次失败,则此连接将被关闭。
如果设置为 更改将在重新部署模块或重新启动服务器后生效。 |
Seconds to Trust an Idle Pool Connection 信任空闲缓冲池连接的秒数 |
在将连接传递到应用程序之前或定期连接测试过程期间,WebLogic Server 相信连接仍然有效并将跳过连接测试时使用连接的秒数。 此选项是一种最佳选择,可以最大程度地减少连接测试对性能造成的影响(特别是在流量很大的时候)。 MBean 特性 (不适用于应用程序模块): JDBCConnectionPoolParamsBean.SecondsToTrustAnIdlePoolConnection 最小值: |
Shrink Frequency 收缩频率 |
在收缩为满足需要而增大了的连接缓冲池前需等待的秒数。 如果设置为 MBean 特性 (不适用于应用程序模块): JDBCConnectionPoolParamsBean.ShrinkFrequencySeconds 最小值: |
Connection Creation Retry Frequency 重试创建连接的频率 |
建立数据库连接尝试的间隔秒数。
如果不设置此值,则在数据库不可用的情况下,创建数据源的操作将失败。如果已设置此值且在创建数据源时数据库不可用,则在您指定的秒数之后,WebLogic Server 将重新尝试在缓冲池中创建连接,并会不断尝试创建连接,直到创建成功。 如果设置为 MBean 特性 (不适用于应用程序模块): 最小值: 最大值: |
创建每个物理数据库连接前的延迟秒数。此延迟支持不能快速连续处理多个连接请求的数据库服务器。 在初始数据源创建及数据源生命周期内,每当创建物理数据库连接时都会有此延迟。 MBean 特性 (不适用于应用程序模块): 最小值: 最大值: 更改将在重新部署模块或重新启动服务器后生效。 |
|
Profile Connection Usage 配置文件连接使用情况 |
收集与当前正在使用数据源的连接缓冲池中连接的线程有关的配置文件信息。 MBean 特性 (不适用于应用程序模块): |
Profile Connection Reservation Wait 配置文件连接保留等待 |
收集有关当前等待保留数据源连接的线程的配置文件信息。
MBean 特性 (不适用于应用程序模块): |
Profile Connection Leak 配置文件连接泄漏 |
收集有关已保留数据源中连接和泄漏连接(未正确返回到连接缓冲池)的线程的配置文件信息。 MBean 特性 (不适用于应用程序模块): |
Profile Connection Reservation Failed 配置文件连接保留失败 |
Collect profile information about threads that attempt to reserve a connection from the data source but fail. MBean Attribute (Does not apply to application modules) : 收集与尝试保留数据源连接但却失败的线程有关的配置文件信息。 MBean 特性 (不适用于应用程序模块): |
Profile Statement Cache Entry 配置文件语句缓存条目 |
为添加到语句缓存中的预处理语句和 可调用语句,以及执行缓存语句的线程,收集配置文件信息。
MBean 特性 (不适用于应用程序模块): |
Profile Statement Usage |
收集与当前正在执行语句缓存中 SQL 语句的线程相关的配置文件信息。 MBean 特性 (不适用于应用程序模块): |
Profile Connection Last Usage |
收集有关最后使用此连接的上一线程的配置文件信息。 在调试由待定事务占用的连接的问题(导致这些连接上的后续 XA 操作失败)时,此信息非常有用。 MBean 特性 (不适用于应用程序模块): |
收集有关线程的配置文件信息,这些线程错误地使用了先前由其他线程获取的连接。 MBean 特性 (不适用于应用程序模块): |
|
Profile Harvest Frequency Seconds |
WebLogic Server 收集配置文件数据的间隔秒数。 如果设置为 MBean 特性 (不适用于应用程序模块): 最小值: |
Driver Interceptor 驱动程序侦听器 |
指定用于截获对 JDBC 驱动程序的方法调用的应用程序类的绝对名。指定的应用程序必须实现 weblogic.jdbc.extensions.DriverInterceptor 接口。 在调用 JDBC 驱动程序内的任何方法之前和之后,Weblogic Server 将调用已注册应用程序的 preInvokeCallback()、postInvokeExceptionCallback() 和 postInvokeCallback() 方法。可使用此功能配置 JDBC 驱动程序的使用情况和监视:
MBean 特性 (不适用于应用程序模块): |
Set Client ID On Connection 启用凭据映射 |
为该数据源启用凭据映射。应用程序请求数据库连接时,WebLogic Server 根据数据库 ID 映射在该数据库连接上设置一个轻型客户端 ID。 还要必须指定 WebLogic Server 用户 ID 到数据库用户 ID 的映射(凭据映射)。 此功能依赖于 JDBC 驱动程序和 DBMS 中的功能。并非所有驱动程序和 DBMS 都支持此功能。 MBean 特性 (不适用于应用程序模块): |
Inactive Connection Timeout 非活动连接超时 |
保留连接处于不活动状态的秒数,该秒数过后 WebLogic Server 将收回该连接并将其释放回连接缓冲池。 可以使用“非活动连接超时”功能收回泄漏的连接 - 未由应用程序显式关闭的连接。请注意,不能使用此功能来代替正常关闭连接。 如果设置为 MBean 特性 (不适用于应用程序模块): 最小值: |
Maximum Waiting for Connection 最大等待连接数 |
等待保留数据源的连接缓冲池中的连接时会阻塞线程的最大并发连接请求数。 MBean 特性 (不适用于应用程序模块): 最小值: |
Connection Reserve Timeout 连接保留超时 |
保留连接缓冲池中的连接的调用超时之前经过的秒数。 如果设置为 如果设置为 MBean 特性 (不适用于应用程序模块): 最小值: |
Statement Timeout 语句超时 |
此时间后当前正在执行的语句将超时。 StatementTimeout 依赖于底层 JDBC 驱动程序支持。WebLogic Server 使用 值为 值为 MBean 特性 (不适用于应用程序模块): 最小值: |
Ignore In-Use Connections 忽略正在使用的连接 |
即便仍在使用从缓冲池获取的连接,也能够将数据源关闭。 MBean 特性 (不适用于应用程序模块): |
PinnedToThread 是一个能够改善性能的选项,它启用执行线程以保持已进入缓冲池的数据库连接,即使在应用程序关闭逻辑连接之后。 启用 PinnedToThread 后,WebLogic Server 将在应用程序首次使用某个执行线程保留连接时把连接缓冲池中的一个数据库连接固定到此线程。当应用程序使用完此连接并调用 connection.close()(此方法在其他情况下将把连接返回到连接缓冲池)时,WebLogic Server 将把该连接保留给执行线程,而不会将其返回连接缓冲池。当此后某个应用程序使用相同的执行线程请求连接时,WebLogic Server 将提供此线程已保留的这个连接。 使用 PinnedToThread,当多个线程尝试同时保留一个连接时,连接缓冲池上不会发生锁定冲突,对于试图在有限个数的数据库连接中保留同一个连接的线程,也没有冲突。 如果应用程序使用相同的执行线程同时保留连接缓冲池中的多个连接,WebLogic Server 将创建附加的数据库连接并同样将它们固定到此线程。 MBean 特性 (不适用于应用程序模块): |
|
Remove Infected Connections Enabled 已启用删除受影响的连接 |
指定在应用程序使用底层供应商连接对象之后是否从连接缓冲池中删除连接。 如果禁止删除已占用的连接,必须确保该数据库连接适合被其他应用程序重复使用。 设置为 设置为 MBean 特性 (不适用于应用程序模块): |