搜索墙首页  编程技术  java  asp  ajax  php  c/c#/c++  数据库  oracle  mysql  db2  操作系统  windows  linux  股吧
首页 > 编程 > 数据库 > db2
 1         
1楼  reikywang 2008-08-21

结束语

DB2 Universal Database (UDB) 高可用性灾难恢复 (HADR) 为其客户端应用程序提供了一种高可用性解决方案。作为客户端应用程序,WebSphere Application Server 能够区分数据库失败和接管情况。当 DB2 HADR 接管发生时,WebSphere Application Server 将利用 DB2 自动客户端重新路由功能自动重新建立与备用 HADR 服务器的连接。

本文使用 WebSphere Application Server Network Deployment V6.1 DB2 UDB HADR 演示了在这两种产品之间是如何发生接管的。您已经了解到启用 DB2 HADR 以及配置 WebSphere Application Server ND 以便连接到 DB2 HADR 的步骤。还学习了有关接管的行为以及接管过程中在 WebSphere Application Server 日志文件中记录的预期消息。另外,还向您介绍了有关若干常见错误情况的一些疑难解答提示和技巧。

WebSphere Application Server 上不需要任何额外配置步骤即可成功进行 HADR 故障转移。WebSphere Application Server 利用了 DB2 UDB HADR 提供的技术和自动客户端重新路由功能为您的应用程序提供了高可用性环境。

本系列文章的第 2 部分将重点介绍如何使用 Oracle® Real Application Cluster WebSphere Process Server 获得高可用性数据库。

附录

在使用 DB2 Universal JDBC Driver Type4 时保留 HADR 备用服务器信息:

1.      WebSphere Application Server 管理控制台中使用下列值添加新的 DataSource 自定义属性:

o        名称: clientRerouteServerListJNDIName

o        类型: java.lang.String

o        值: cell/persistent/alSrvlist

clientRerouteServerListJNDIName 的值前面必须有 cell/persistent/。否则,JNDI 对象将不会保留在 WebSphere Application Server 中。此处的值应与传递到 T4CRBind.java 文件中的 JNDI 名称匹配(参见清单 18)。保存并同步您的整个计算单元。

2.      复制清单 17 中的程序,并使用 db2jcc.jar 文件进行编译。从 WAS_HOME/bin 目录执行以下编译命令,然后将 T4CRBind 类放入 WAS_HOME/bin 目录:

javac -classpath /home/db2inst1/sqllib/java/db2jcc.jar:$CLASSPATH T4CRBind.java

3.      创建一个可以启动 T4CRBind 类的启动程序,如清单 19 所示。

4.      重新启动运行您的应用程序的 WebSphere Application Server,并从 WAS_HOME/bin 目录启动启动程序。可以通过执行以下命令启动该程序:

launchT4CRBind.sh T4CRBind

在运行此命令之前,请确保您的整个计算单元正在运行。这包括部署管理器、节点代理和应用服务器。

请注意,当启用 WebSphere Application Server 全局安全时,下面的程序可能无法运行。如果全局安全是必需的,请打开一个支持 WebSphere Application Server 的票证获取一个修补程序,以便该程序在启用全局安全的情况下能够正常运行。



清单 18. T4CRBind.java

                       

import javax.naming.InitialContext;

import com.ibm.db2.jcc.DB2ClientRerouteServerList;

 

public class T4CRBind

{

 

    public static void main(String[] args)

    {

         try

         {

                 InitialContext registry = new InitialContext();

 

                 DB2ClientRerouteServerList address = new DB2ClientRerouteServerList();

 

                 int[] alternateServerPorts =

                 { 60000 };

                 String[] alternateServerHosts =

                 { "svtclark.rchland.ibm.com" };

 

                 address.setPrimaryPortNumber(60000);

                 address.setPrimaryServerName("svtlewis.rchland.ibm.com");

 

                 address.setAlternatePortNumber(alternateServerPorts);

                 address.setAlternateServerName(alternateServerHosts);

 

                 registry.unbind("cell/persistent/alSrvlist");

                 registry.rebind("cell/persistent/alSrvlist", address);

 

                 System.out.println("JNDI Registration done....");

         }

         catch (Exception e)

         {

                 e.printStackTrace();

         }

    }

}




清单 19. launchT4CRBind.sh

                       

#!/bin/sh

 

binDir=`dirname $0`

. "$binDir/setupCmdLine.sh"

 

CMD_NAME=`basename $0`

 

if [ -f ${JAVA_HOME}/bin/java ]; then

    JAVA_EXE="${JAVA_HOME}/bin/java"

else

    JAVA_EXE="${JAVA_HOME}/jre/bin/java"

fi

 

DB2JCC_HOME="/home/db2inst1/sqllib/java/db2jcc.jar"

export DB2JCC_HOME

 

 

CLASSPATH=".:$DB2JCC_HOME:$WAS_CLASSPATH"

export CLASSPATH

 

# In the case where more than one application server is installed, you will need to run

# the synch to make sure that the name space of the entire cell is updated.  Also, if the

# port for the naming space is not the default, then you will need to specify the

# ?CDjava.naming.provider.url= <specify the url here>

 

 

"$JAVA_HOME/bin/java" \

  "-Dwas.install.root=$WAS_HOME" \

   -classpath "$CLASSPATH" com.ibm.ws.bootstrap.WSLauncher "$@"

exit 0

 

 1         
您的发言将按有关规定都会存档,您须为所发表后果负责,请您遵纪守法并注意语言文明。
标题:IBM WebSphere与DB2 HADR应用(三)
热门关注
标题回复点击
DB2 9 应用开发(733 考试)认证指南,第 9 部分: 用户定义的例程(1)0243
DB2 程序报 -818 错误问题 。0234
8.2.3 数据库一致性的保证措施0218
DB2 9 基础(730 考试)认证指南,第 7 部分: XQuery 简介(1)0216
Windows 环境批处理备份DB20210
DB2 9 基础(730 考试)认证指南,第 1 部分: DB2 规划(3)0209
DB2 9 数据库管理(731考试)认证指南,第 3 部分: 数据访问(1)0200
安装db2客户端并连接到db2数据库0199
IBM DB2 日常维护汇总(一)0197
浅谈DB2数据库故障处理及最佳实践(2)0186
搜索墙@2009 www.pkwall.com all rights reserved QQ:276471788 [京ICP备09111534号]
声明:本站部分数据来源于网络,仅供参考,如有版权问题,请联系我们,我们将及时删除!转载本站请注明来源