为使用 DB2 数据库的应用程序配置客户机重新路由

客户机重新路由功能使您能够针对 DB2® 通用数据库配置客户机应用程序以便在通信中断后进行恢复,以使应用程序能够继续工作而中断时间最短。重新路由是持续操作支持的核心,但只有对客户机连接标识备用位置之后,才有可能进行重新路由。

开始之前

本任务假定:
  • 您已在应用程序服务器中定义 DB2 数据源。有关创建数据源的信息,请参阅“使用管理控制台配置数据源”主题。
  • 应用程序所连接的 DB2 数据源正在运行下列其中一项:
    • DB2 for z/OS® V10.1 或更高版本
    • DB2 Database for Linux, UNIX, and Windows V9.7 或更高版本
  • 您已实现具有冗余设置或者能够将 DB2 服务器故障转移至备用节点的 DB2 数据库。
  • [z/OS]您将使用 4 类连接来连接至数据源。

关于此任务

DB2 的客户机重新路由功能允许您提供备用服务器位置,以防与数据库服务器的连接发生故障。如果您决定将客户机重新路由功能与持久性选项配合使用,那么备用服务器信息将跨 Java™ 虚拟机 (JVM) 保留。在应用程序服务器崩溃之后,当应用程序服务器复原并尝试连接到数据库时,备用服务器信息不会丢失。

启用客户机重新路由功能后,当 DB2 的 JDBC 驱动程序对 DB2 服务器建立初始连接时,此驱动程序将支持该功能,而不要求在客户机端进行任何配置。当 JDBC 驱动程序连接到配置了备用服务器的 DB2 服务器时,主服务器会将关于备用服务器的信息发送到该 JDBC 驱动程序。如果与主服务器的连接发生故障,那么 JDBC 驱动程序能够将连接重新路由到备用服务器。但是,如果客户机进程崩溃,那么备用服务器信息将丢失,该客户机将需要再次连接到主服务器。如果该客户机无法与主服务器建立初始连接,那么该客户机将不知道备用服务器,因此无法进行重新路由。

要克服此问题,您可以使用备用服务器名称备用端口号字段或者 通过 clientRerouteAlternateServerName 和 clientRerouteAlternatePortNumber 数据源定制属性将应用程序服务器中的 DB2 数据源配置为支持客户机重新路由功能,甚至在初始连接尝试期间亦如此。即使 JDBC 驱动程序无法连接到主 DB2 服务器,但由于进行客户机重新路由所必需的信息已存在,因此 JDBC 驱动程序能够将连接重新路由到备用服务器。

注意: 数据源定制属性 enableClientAffinitiesList 会更改 clientRerouteAlternateServerName 和 clientRerouteAlternatePortNumber 属性的语义。
要了解有关这些属性的更多信息,请参阅 DB2 信息中心中的“所有受支持数据库产品的公共 IBM Data Server Driver for JDBC and SQLJ 属性”主题。要了解有关客户机亲缘关系的更多信息,请参阅“为使用 DB2 数据库的应用程序配置客户机亲缘关系”主题。

另外,如果您已配置 DB2 数据源作为 4 类 JDBC 驱动程序,那么可以使用客户机重新路由服务器列表 JNDI 名称字段或者 clientRerouteServerListJNDIName 数据源定制属性来启用客户机重新路由状态的持久性。通常,对连接进行重新路由时,如果 JDBC 驱动程序已连接到备用 DB2 服务器,那么备用服务器会将关于它自己的备用服务器的信息发送到该 JDBC 驱动程序。于是,该 JDBC 驱动程序将拥有在该备用 DB2 服务器不可用时再次对连接进行重新路由所需的信息。实际上,最初作为备用服务器的服务器现已成为主服务器,并已确定新的备用服务器。如果启用了客户机重新路由持久性,那么将记住这个新状态。如果应用程序服务器崩溃并重新启动,那么 JDBC 驱动程序能够在崩溃时连接到先前被视为主服务器的 DB2 服务器。如果没有持久性功能,那么 JDBC 驱动程序将必须从原始服务器配置启动并尝试连接到最初被视为主服务器的服务器。

可以在下列 DB2 可配置环境中使用自动的客户机重新路由功能:
  • 具有数据分区功能部件 (DPF) 的企业服务器版 (ESE)
  • 数据传播器 (DPROPR) 样式的复制
  • 高可用性集群多处理器 (HACMP™)
  • 高可用性灾难恢复 (HADR)。

过程

  1. 在管理控制台中,单击资源 > JDBC > 数据源 > data_source
  2. 单击 WebSphere Application Server 数据源属性
  3. DB2 自动客户机重新路由选项部分中,填写字段以启用客户机重新路由功能。 请填写下列字段:
    备用服务器名称
    指定 DB2 服务器的备用服务器名称列表。如果指定了多个备用服务器名称,那么必须用逗号分隔这些名称。例如:
     host1,host2
    备用端口号
    指定 DB2 服务器的备用服务器端口列表。如果指定了多个备用服务器端口,那么必须用逗号分隔这些端口。例如:
    5000,50001
    避免故障 避免故障: 确保对备用端口和主机指定相同数目的条目。否则,系统将显示警告,并且不会启用客户机重新路由功能。gotcha
  4. 可选: 启用“具有持久性的客户机重新路由”选项。
    1. 填写客户机重新路由服务器列表 JNDI 名称字段。 此字段指定用来将 DB2 客户机重新路由服务器列表与 JNDI 名称空间绑定的 JNDI 名称。当内存中尚不存在备用服务器信息时,DB2 数据库服务器将使用此名称来查询备用服务器名称列表。
      避免故障 避免故障: 请了解下列事项:
      • 2 类数据源不支持此选项。如果您使用已被配置成 2 类 JDBC 驱动程序的 DB2 数据源,那么该 JDBC 驱动程序将使用目录来保存客户机重新路由信息。如果对 2 类驱动程序配置此属性,那么应用程序服务器将发出警告。
      • 在不同的数据源之间,请使用不同的 JNDI 名称。否则,删除数据源时,将从名称空间中移除 JNDI 条目,其他共享该 JNDI 条目的数据源将受影响。
      gotcha
  5. 配置客户机重新路由功能的重试计数和时间间隔。 请填写下面这两个字段:
    客户机重新路由的重试时间间隔
    指定两次重试自动客户机重新路由之间相隔的时间(以秒计)。
    客户机重新路由的最大重试次数
    指定在与服务器的主连接断开时“自动客户机重新路由”功能尝试的最大重试连接次数。仅当设置了客户机重新路由的重试时间间隔时才使用此属性。
  6. 单击确定,然后保存更改。
  7. 重新启动应用程序服务器。

下一步做什么

以后,如果您想移除 JNDI 中绑定的客户机重新路由信息,那么可以通过删除数据源来完成此任务。另外,也可以将取消绑定功能与测试连接服务配合使用,以便从应用程序服务器的 JNDI 名称空间中删除客户机重新路由功能的 JNDI 绑定,而不删除数据源。
要删除客户机重新路由功能的 JNDI 绑定,请执行下列操作:
  1. 选择从 JNDI 取消绑定客户机重新路由列表
  2. 单击确定
  3. 保存配置。
  4. 对数据源单击测试连接
  5. 取消选中从 JNDI 取消绑定客户机重新路由列表
  6. 单击确定
  7. 保存配置。

指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tdat_clientreroute
文件名:tdat_clientreroute.html