![[z/OS]](../images/ngzos.gif)
z/OS 上的 DB2 on z/OS 和应用程序服务器的数据源最低需求设置
这些属性随数据库供应商对 JDBC 驱动程序实现的要求不同而有所不同。您必须对配置的每个数据源设置适当的属性。这些设置适用于在 z/OS® 上运行且将由同样在 z/OS 上运行的应用程序服务器中的应用程序访问的 DB2® 数据源。
- DB2 使用 IBM JCC 驱动程序
此提供程序是 DB2 的一阶段落实 JCC 提供程序,它使用 IBM Data Server Driver for JDBC and SQLJ。IBM Data Server Driver for JDBC and SQLJ 是 DB2 通用 JDBC 驱动程序的下一代。在此提供程序下创建的数据源只支持一阶段落实处理,除非您将 z/OS 的应用程序服务器与 2 类 JDBC 驱动程序配合使用。如果您在 z/OS 上和 2 类驱动程序一起运行应用程序服务器,那么驱动程序使用 RRS 并支持两阶段落实处理。
此提供程序:- 可在 V7.0 及更高版本的节点中进行配置
- 支持以下一阶段数据源:
com.ibm.db2.jcc.DB2ConnectionPoolDataSource
- 需要以下 JDBC 驱动程序文件:
- db2jcc4.jar - 这是 IBM Data Server Driver for JDBC and SQLJ 的 .jar 文件。将 DB2_JCC_DRIVER_PATH 路径变量设置为指向 db2jcc4.jar 文件。安装 DB2 后,可以在 DB2 java 目录中找到这个 .jar 文件。对于未安装 DB2 的客户机,要实现 4 类 JDBC 驱动程序支持,请将此文件复制到本地机器。如果安装 DB2 的任何修订或升级,那么还必须更新此文件。
- db2jcc_license_cu.jar - 这是 IBM Data Server Driver for JDBC and SQLJ 许可证文件,用于允许访问 DB2 数据库。使用此 .jar 文件或其后面一个文件以获取数据库的访问权。这个 .jar 文件随应用程序服务器一起交付,并存放在 UNIVERSAL_JDBC_DRIVER_PATH 环境变量所定义的目录中。
- db2jcc_license_cisuz.jar - 这是 IBM Data Server for JDBC and SQLJ 许可证文件,用于允许访问下列数据库:
- DB2 Database for Linux, UNIX and Windows
- DB2 for iSeries
- DB2 for z/OS
- DB2 for VM and VSE
db2jcc_license_cisuz.jar 并非随应用程序服务器一起提供。请将此文件和 db2jcc4.jar 文件放在同一个目录中,以使 DB2_JCC_DRIVER_PATH 同时指向这两个文件。
- 应用程序服务器中 IBM Data Server Driver for JDBC and SQLJ 所需的本机文件。仅当 driverType 设置为 2 时,才需要这些文件。
- 使用以下类路径:
${DB2_JCC_DRIVER_PATH}/db2jcc4.jar ${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar ${DB2_JCC_DRIVER_PATH}/db2jcc_license_cisuz.jar ${PUREQUERY_PATH}/pdq.jar ${PUREQUERY_PATH}/pdqmgmt.jar
避免故障: 指定 ${DB2_JCC_DRIVER_PATH}、${UNIVERSAL_JDBC_DRIVER_PATH} 和 ${DB2_JCC_DRIVER_PATH} 的目录路径时,请勿指定包含 RFC 2396:统一资源标识 (URI):通用语法的 2.4.3 节中所标识的任何特殊字符的路径。gotcha
注意: ${PUREQUERY_PATH}/pdq.jar 和 ${PUREQUERY_PATH}/pdqmgmt.jar 是为了方便而添加到类路径中,并且仅当 pureQuery 应用程序使用 JDBC 提供程序时,才需要这两个文件。如果要将此 JDBC 提供程序与 pureQuery 应用程序配合使用,请将 PUREQUERY_PATH 变量设置为 IBM Optim™ pureQuery Runtime JAR 文件的存储目录。 - 使用以下本机库路径:
如果将 driverType 设置为 2,那么 DB2_JCC_DRIVER_NATIVEPATH 变量应该设置为 DB2 客户机安装中包含本机驱动程序库的目录。如果将 driverType 设置为 4,那么不使用本机路径。${DB2_JCC_DRIVER_NATIVEPATH}
- 需要以下 DataStoreHelper 类:
com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper
- 需要有效的认证别名。
- 需要属性:
- databaseName - 如果 driverType 设置为 4,那么这是实际数据库名称;如果 driverType 设置为 2,那么这是在本地编目的数据库名称。
- driverType - 数据源的 JDBC 连接类型。共有两个允许的值:2 和 4。如果要使用 2 类驱动程序,请将此值设置为 2。如果要使用 4 类驱动程序,请将此值设置为 4。
- serverName - Distributed Relational Database Architecture™ (DRDA®) 服务器的 TCP/IP 地址或主机名。仅当 driverType 设置为 4 时,才需要为此属性提供值。如果 driverType 设置为 2,那么不需要此属性。
- portNumber - DRDA 服务器所使用的 TCP/IP 端口号。 仅当 driverType 设置为 4 时,才需要为此属性提供值。如果 driverType 设置为 2,那么不需要此属性。
- useTransactionRedirect 如果后端使用数据库分区功能 (DPF),并且分区键在整个事务中保持不变,请配置此属性作为数据源定制属性。激活此属性将影响
IBM Data Server Driver for JDBC and SQLJ 对每个开始执行 DB2
事务的连接请求进行定向的方式。触发该 JDBC 驱动程序以将这些连接请求发送至
DPF 节点,如果事务中存在可引导的语句,那么该节点包含第一个此类语句的目标数据。然后,DB2 将 SQL 语句引向需要的不同分区;事务从应用程序服务器观点正常发展。
可以将 useTransactionRedirect 用于 driverType 2 和 driverType 4 数据源。要配置属性,可以使用 wsadmin 脚本编制工具或管理控制台页面、Java™ EE 资源提供程序或连接工厂定制属性收集。请对该属性指定值 True。
- DB2 Using IBM JCC 驱动程序 (XA)DB2 Using IBM JCC 驱动程序 (XA) 是 DB2 的两阶段落实 JCC 提供程序,它使用 IBM Data Server Driver for JDBC and SQLJ。IBM Data Server Driver 是 DB2 通用 JDBC 驱动程序的下一代。在此提供程序下创建的数据源支持使用 XA 执行两阶段落实进程。
避免故障: 不要在 z/OS 的应用程序服务器上使用 2 类 JDBC 驱动程序。gotcha
此提供程序:- 可在 V7.0 及更高版本的节点中进行配置。
- 支持以下两阶段数据源:
com.ibm.db2.jcc.DB2XADataSource
- 需要以下 JDBC 驱动程序文件:
- db2jcc4.jar - 这是 IBM Data Server Driver for JDBC and SQLJ 的 .jar 文件。将 DB2_JCC_DRIVER_PATH 路径变量设置为指向 db2jcc4.jar 文件。安装 DB2 后,可以在 DB2 Java 目录中找到 .jar 文件。对于未安装 DB2 的客户机,要实现 4 类 JDBC 驱动程序支持,请将此文件复制到本地机器。如果安装 DB2 的任何修订或升级,那么还必须更新此文件。另外,还必须指定 db2jcc4.jar 的标准路径作为 DB2_JCC_DRIVER_PATH 环境变量的值。
- db2jcc_license_cu.jar - 这是许可证文件,用于允许访问 DB2 数据库。使用此 .jar 文件或其后面一个文件以获取数据库的访问权。这个 .jar 文件随应用程序服务器一起交付,并存放在 UNIVERSAL_JDBC_DRIVER_PATH 环境变量所定义的目录中。
- db2jcc_license_cisuz.jar - 这是许可证文件,允许访问以下数据库:
- DB2 Database for Linux, UNIX and Windows
- DB2 for iSeries
- DB2 for z/OS
- DB2 for VM and VSE
db2jcc_license_cisuz.jar 并非随应用程序服务器一起提供。请将此文件和 db2jcc4.jar 文件放在同一个目录中,以使 DB2_JCC_DRIVER_PATH 同时指向这两个文件。
- 应用程序服务器中 IBM Data Server Driver for JDBC and SQLJ 所需的本机文件。仅当 driverType 设置为 2 时,才需要这些文件。
- 使用以下类路径:
${DB2_JCC_DRIVER_PATH}/db2jcc4.jar ${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar ${DB2_JCC_DRIVER_PATH}/db2jcc_license_cisuz.jar ${PUREQUERY_PATH}/pdq.jar ${PUREQUERY_PATH}/pdqmgmt.jar
避免故障: 指定 ${DB2_JCC_DRIVER_PATH}、${UNIVERSAL_JDBC_DRIVER_PATH} 和 ${DB2_JCC_DRIVER_PATH} 的目录路径时,请勿指定包含 RFC 2396:统一资源标识 (URI):通用语法的 2.4.3 节中所标识的任何特殊字符的路径。gotcha
注意: ${PUREQUERY_PATH}/pdq.jar 和 ${PUREQUERY_PATH}/pdqmgmt.jar 是为了方便而添加到类路径中,并且仅当 pureQuery 应用程序使用 JDBC 提供程序时,才需要这两个文件。如果要将此 JDBC 提供程序与 pureQuery 应用程序配合使用,请将 PUREQUERY_PATH 变量设置为 IBM Optim pureQuery Runtime JAR 文件的存储目录。 - 使用以下本机库路径:
如果将 driverType 设置为 2,那么 DB2_JCC_DRIVER_NATIVEPATH 变量应该设置为 DB2 客户机安装中包含本机驱动程序库的目录。如果将 driverType 设置为 4,那么不使用本机路径。${DB2_JCC_DRIVER_NATIVEPATH}
- 需要以下 DataStoreHelper 类:
com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper
- 需要有效的认证别名。
- 需要以下属性:
- databaseName - 如果 driverType 设置为 4,那么这是实际数据库名称;如果 driverType 设置为 2,那么这是在本地编目的数据库名称。
- driverType - 数据源的 JDBC 连接类型。共有两个允许的值:2 和 4。如果要使用 2 类驱动程序,请将此值设置为 2。如果要使用 4 类驱动程序,请将此值设置为 4。
- serverName - 分布式关系数据库体系结构 (DRDA) 服务器的 TCP/IP 地址或主机名。仅当 driverType 设置为 4 时,才需要为此属性提供值。如果 driverType 设置为 2,那么不需要此属性。
- portNumber - DRDA 服务器所使用的 TCP/IP 端口号。 仅当 driverType 设置为 4 时,才需要为此属性提供值。如果 driverType 设置为 2,那么不需要此属性。
- useTransactionRedirect 如果后端使用数据库分区功能 (DPF),并且分区键在整个事务中保持不变,请配置此属性作为数据源定制属性。激活此属性将影响
IBM Data Server Driver for JDBC and SQLJ 对每个开始执行 DB2
事务的连接请求进行定向的方式。触发该 JDBC 驱动程序以将这些连接请求发送至
DPF 节点,如果事务中存在可引导的语句,那么该节点包含第一个此类语句的目标数据。然后,DB2 将 SQL 语句引向需要的不同分区;事务从应用程序服务器观点正常发展。
可以将 useTransactionRedirect 用于 driverType 2 和 driverType 4 数据源。要配置属性,可以使用 wsadmin 脚本编制工具或管理控制台页面、Java EE 资源提供程序或连接工厂定制属性收集。请对该属性指定值 True。
- DB2 通用 JDBC 驱动程序提供程序DB2 通用 JDBC 驱动程序是一种结构中立的 JDBC 驱动程序,可访问分布式和本地 DB2。 因为 DB2 通用驱动程序体系结构独立于任何特殊的 JDBC 驱动程序连接或目标平台,所以它允许单个驱动程序实例到 DB2 的 Java 连接(4 类)或基于 Java 本机接口 (JNI) 的连接(2 类)。DB2 通用 JDBC 驱动程序支持到 DB2 数据库的 JDBC 和 Java 结构化查询语言 (SQLJ) 访问,同时 SQLJ 可以和 CMP 配合使用。
避免故障: 要使用此提供程序,必须为 z/OS 应用程序服务器安装并配置用于 DB2 的 DB2 通用 JDBC 驱动程序。请参阅“使用 DB2 通用 JDBC 驱动程序访问 DB2 z/OS 版”主题。gotcha
此提供程序:- 支持以下数据源:
此数据源可以支持两阶段事务(仅适用于 z/OS 平台上的应用程序服务器)。如果您设置 了 2 类连接的 DB2 通用 JDBC 驱动程序,那么运行在 z/OS 上的应用程序服务器使用 RRS 处理事务,包括两阶段落实事务。当此数据源实现与 4 类驱动程序连接配合使用时,它仅支持一阶段事务。com.ibm.db2.jcc.DB2ConnectionPoolDataSource
- 需要 JDBC 驱动程序文件:
- db2jcc.jar - 这是 DB2 通用 JDBC 驱动程序 .jar 文件,它位于 DB2 安装目录中。为变量 DB2UNIVERSAL_JDBC_DRIVER_PATH 的值指定此 .jar 文件的标准路径。
- db2jcc_license_cisuz.jar - 此 DB2 通用 JDBC 驱动程序许可证文件包含在 DB2 中。
DB2 的安装程序将许可证文件和 db2jcc.jar 放置在相同的 DB2 目录中。因此变量 DB2UNIVERSAL_JDBC_DRIVER_PATH 最终指向这两个文件。注: 驱动程序文件 db2jcc_license_cu.jar 放置在应用程序服务器的 app_server_root/universalDriver/lib 目录中。自动设置为 UNIVERSAL_JDBC_DRIVER_PATH 变量。 虽然,该驱动程序文件不能提供对 DB2 for z/OS 的访问权,但是您可以将其保留为变量定义部分。
- z/OS 应用程序服务器中的 DB2 通用 JDBC 驱动程序需要 .so 类型的本机文件。 设置库路径变量 DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH 为包含本机文件的目录。当不需要本机文件时,设置 DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH 为 null。
- 使用以下类路径:
${DB2UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc.jar ${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar ${DB2UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cisuz.jar ${DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH}
避免故障: 指定 ${DB2_JCC_DRIVER_PATH}、${UNIVERSAL_JDBC_DRIVER_PATH} 和 ${DB2_JCC_DRIVER_PATH} 的目录路径时,请勿指定包含 RFC 2396:统一资源标识 (URI):通用语法的 2.4.3 节中所标识的任何特殊字符的路径。gotcha
- 需要以下 DataStoreHelper 类:
com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper
- 如果将 driverType 属性设置为 4,那么需要有效的认证别名。如果 driverType 属性设置为 2,那么必须指定组件管理的认证别名以使用带有 res-auth APPLICATION 的数据源。
在指定了 driverType 2 且数据源与资源认证 CONTAINER 配合使用的情况下,可以指定容器管理的认证别名;但是,它不是必需的。如果未指定容器管理的别名,那么与数据源创建的连接关联的用户标识就是获取连接时与当前线程关联的用户标识。
- 需要以下属性:
- databaseName - 如果 driverType 设置为 4,那么这是一个实际的数据库名称;或如果 driverType 设置为 2,那么这是一个本地编目的数据库名称。
- driverType - 数据源的 JDBC 连接类型。有两个许可值:2 和 4。如果要使用通用 2 类 JDBC 驱动程序,请将此值设置为 2。如果要使用通用 4 类 JDBC 驱动程序,请将此值设置为 4。
- serverName - 分布式关系数据库体系结构 (DRDA) 服务器的 TCP/IP 地址或主机名。只有在将 driverType 设置为 4 时,才为此属性提供值。如果 driverType 设置为 2,那么不需要此属性。
- portNumber - DRDA 服务器所使用的 TCP/IP 端口号。
在 driverType 设置为 4 的情况下,才提供此属性的值。如果 driverType 设置为 2,那么此属性不是必需的。注: DB2 支持 DB2 通用 JDBC 驱动程序的其他连接属性;将它们设置为数据源上的定制属性。有关这些可选的数据源属性的信息,请参阅您使用的 DB2 for z/OS 版本的相应《Java 应用程序编程指南和参考》。
- 支持以下数据源:
- DB2 通用 JDBC 提供程序 (XA)XA DB2 通用 JDBC 提供程序使用 DB2 通用 JDBC 驱动程序,提供到 DB2 数据库的访问权。 通用 JDBC 驱动程序支持基于 Java 通信的连接(4 类驱动程序)。对于 XA 事务,z/OS 应用程序服务器上的 DB2 通用 JDBC 驱动程序不支持 2 类驱动程序连接。
避免故障: 要使用此提供程序,必须为 z/OS 应用程序服务器安装并配置用于 DB2 的 DB2 通用 JDBC 驱动程序,或者为 z/OS 应用程序服务器安装并配置 z/OS Application Connectivity to DB2 for z/OS 功能部件。请参阅“使用 DB2 通用 JDBC 驱动程序访问 DB2 z/OS 版”主题。gotcha
此提供程序:- 允许应用程序使用 JDBC 和 Java 结构化查询语言 (SQLJ) 访问 DB2 数据库。通过 CMP 使用 SQLJ 也受支持。
- 不支持创建 V4.0 数据源。
- 支持两阶段数据源:
com.ibm.db2.jcc.DB2XADataSource
- 需要以下 JDBC 驱动程序文件:
- db2jcc.jar - 这是 DB2 通用 JDBC 驱动程序 .jar 文件,它位于 DB2 安装目录中。为 WebSphere 变量 DB2UNIVERSAL_JDBC_DRIVER_PATH 的值指定此 .jar 文件的标准路径。应用程序服务器使用此值定义 JDBC 提供程序。
- db2jcc_license_cisuz.jar - 此 DB2 通用 JDBC 驱动程序许可证文件包含在 DB2 中。
DB2 的安装程序将许可证文件和 db2jcc.jar 放置在相同的 DB2 目录中。因此变量 DB2UNIVERSAL_JDBC_DRIVER_PATH 最终指向这两个文件。注: 驱动程序文件 db2jcc_license_cu.jar 放置在应用程序服务器的 app_server_root/universalDriver/lib 目录中。缺省情况下,UNIVERSAL_JDBC_DRIVER_PATH 变量设置为此目录位置。虽然,该驱动程序文件不能提供对 DB2 for z/OS 的访问权,但是您可以将其保留为变量定义部分。
- 对于 z/OS 应用程序服务器中的 DB2 通用 JDBC 驱动程序,如果服务器仅使用
4 类驱动程序,那么不需要 .so 类型的本机文件。在这种情况下,可以将 DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH 的值设置为空。
最佳实践: 如果服务器同时运行 2 类和 4 类驱动程序,或者将来有可能同时运行这两类驱动程序,那么您可以将此值设置为本机文件的有效文件路径。此变量将用于 2 类驱动程序,但是在不需要本机文件的情况下,DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH 的值不应产生任何负面影响。bprac
- 使用以下类路径:
${DB2UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc.jar ${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar ${DB2UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cisuz.jar ${DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH}
避免故障: 指定 ${DB2_JCC_DRIVER_PATH}、${UNIVERSAL_JDBC_DRIVER_PATH} 和 ${DB2_JCC_DRIVER_PATH} 的目录路径时,请勿指定包含 RFC 2396:统一资源标识 (URI):通用语法的 2.4.3 节中所标识的任何特殊字符的路径。gotcha
- 需要以下 DataStoreHelper 类:
com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper
- 需要有效的认证别名。
- 需要以下属性:
- databaseName - 这是一个本地编目数据库名称。
- driverType - 这是数据源的 JDBC 连接类型。如果正在运行的 DB2 版本低于 DB2 V8.1 FP6,那么将限制您只能使用 2 类驱动程序。
- serverName - 分布式关系数据库体系结构 (DRDA) 服务器的 TCP/IP 地址或主机名。只有在将 driverType 设置为 4 时,才为此属性提供值。如果 driverType 设置为 2,那么不需要此属性。
- portNumber - DRDA 服务器所使用的 TCP/IP 端口号。
在 driverType 设置为 4 的情况下,才提供此属性的值。如果 driverType 设置为 2,那么此属性不是必需的。注: DB2 支持 DB2 通用 JDBC 驱动程序的其他连接属性;将它们设置为数据源上的定制属性。有关这些可选的数据源属性的信息,请参阅您使用的 DB2 for z/OS 版本的相应《Java 应用程序编程指南和参考》。