Posted on 2007-12-30 21:51
leekiang 阅读(1037)
评论(0) 编辑 收藏 所属分类:
oracle
企业要求它们的企业应用程序有 99.99% 或者甚至 99.999% 的可用性是很常见的。考虑一下要确保全年不超过 0.5 小时的停机时间或者甚至没有停机时间将花费多大的代价。为了回应这些大量的高可用性需求,企业正投资于在一个参与系统出现故障时能够提供自动故障切换的机制。当考虑 Oracle 数据库的可用性时,Oracle9i RAC 提供了一个拥有高级故障切换机制的优越的解决方案。
Oracle9i RAC 包含了全部在一个集群配置中工作并负责提供持续的可用性的所需组件—当集群中的一个参与系统出现故障时,用户可以自动移植到其它的可用系统上。 Oracle9i RAC 的一个负责故障切换处理的主要组件是透明应用程序故障切换 (TAF) 选件。所有释放连接的数据库连接(和过程)都被重新连接到了集群中的另一个节点上。故障切换对用户是完全透明的。
下面是通过JDBC实现的透明应用程序故障切换的代码片断
//Author : newall Date 2005-08-05 14:41
Class.forName("oracle.jdbc.driver.OracleDriver");
String
url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST =(LOAD_BALANCE =
yes)(ADDRESS=(PROTO =TCP)(HOST=node1)(PORT=1521))(ADDRESS=(PROTO
=TCP)(HOST=node2)(PORT=1521))(ADDRESS=(PROTO
=TCP)(HOST=node3)(PORT=1521))(ADDRESS=(PROTO
=TCP)(HOST=node4)(PORT=1521))(CONNECT_DATA =(SERVICE_NAME = oracleServerName)(failover_mode = (type = select)(method = basic)(retries = 20)(delay = 15)))))";
String user="userName";
String password="userPassword";
conn= DriverManager.getConnection(url,user,password);