今天进行junit的Case回归测试,功能测试人员告知数据库ip进行了变更,于是
将jdbc连接的url进行了相应的变更如下
jdbcConnection = java.sql.DriverManager.getConnection("jdbc:oracle:thin:@10.1.151.120:1521:rac", "alibank_test", "alibank");
结果怎么连也连不上
向开发请教得到说url要换成如下链接
jdbc:oracle:thin:@(description=(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.151.117)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = rac)))
觉得很奇怪,于是根据connect_data一步一步google,这个是不能问开发的,否则没有面子,学习要靠自己。终于发现原来是开发数据库部署的设备进行了升级,使用了rac设备。
而使用rac设备,jdbc的连接靠ip地址是找不到的。必须写成上面大字的格式
于是顺道把rac设备也学习了一下
RAC就是real application clusters的缩写,跟rack的读音同。
Oracle Real Application Clusters (RAC)可以支持24 x 7 有效的数据库应用 系统,您可以在由低成本的服务器构成的高可用性系统上自由部署您的应用,而无需修改您的应用程序。已经有超过4200个用户从中受益。现在Oracle在10g RAC中更提供免费的集群软件和存储管理软件,为您降低应用成本。拥有RAC您无需再为成本而牺牲性能和 可靠性。
关键特性
高可用性
Oracle Real Application Clusters 提供一个高性能低成本的应用平台,支持所有类型的应用系统,无论是事务处理型应用还是分析型应用。所有应用共享同样的服务器和存储资源。出现任何的服务器或磁盘故障,系统会自动重新接管发生故障的功能。这些对前端用户的完全透明的。同样,如果您需要增加服务器或改变其他组件的配置也不会影响到应用系统。
 
高性能
Oracle Real Application Clusters保持着TPC-C的记录,达到每分钟 118万个事务的处理能力,和仅仅 $5.52 每tpmC的成本。在3,000 GB的 TPC-H数据仓库Benchmark 测试中, Oracle RAC同样保持性价比的领先地位,保证我们的用户能够达到更好更快的 ROI。这仅仅是Oracle 保持的多项Benchmark 记录中的最 近的一些指标。
 
按需扩充
您现有的系统可能是基于当前的工作负载而构建的,当 应用规模需要扩充时(支持更多的数据、用户或应用),您就需要扩展您的系统以保证系统的性能。当您的应用是构建于大型的SMP主机时,您可能需要购买另一 台昂贵的主机,但可能只能使用到其处理能力的很小一部分。但是如果您使用Oracle RAC的话,您可以通过增加一台或多台低成本的服务器来扩充您的应用系统的处理能力,满足应用需 求。
 
第三方应用支持
Oracle RAC数据库服务器象一个单一镜像的数据库服务 器,所有的应用无需任何改动都可以直接部署 (例如Oracle EBS, SAP, Siebel, 您自己的应用), 同时可以提高应用性能和可靠性。 Oracle和SAP的应用在RAC上完成了一系列的benchmarks性能测试,获 得了非常优异的测试结果, 象ABB 和Colgate一些大客户都是在Oracle RAC上运行他们的 SAP 应用软件。
 
技术应答
我听说RAC无法证明其在超过4个处理器的集群上的伸缩性 – 您有什么证据来证明RAC 的高可用性、高伸缩性和高可靠性?
标准的benchmark 性能测试表 明 SAP 运 行于RAC上可以达到80%的伸缩性。一个明显的例证是最近在HP上所作的标准 TPC-C测试。第一个测试是Oracle运行于有64个Intel Itanium2® CPU 的HP SuperDome SMP巨型服务器。第二个测试是16个节点的集群系统,每个节点是4个CPU的SMP服务器。测试结果表明RAC环境性能超过SuperDome 18% ,这两个测试使用了完全同样的 Itanium2® CPU,处理器总数都是64。所以在同样的CPU处理能力下,RAC具有更好的伸缩性。
当您再进一步考察这两种方案的成本时,您会发现RAC的成本更低。HP SuperDome 将近800万美元,而同样的集群系统的成本仅仅不到300万美元, 其成本只是大型机的1/3。
 
为什么说Oracle Real Application Clusters 10g 要远远超过它的竞争对手?
最基本的不同是,Oracle Real Application Clusters 10g 中所有服务器都可以直接访问数据库中的所有数据,其他的数据库在开放系统中都做不到这点, 正是由于这个原因,您可以非常方便地根据需求随时增加服务器来扩充您的系统,无需重新分布数据和应用。Real Application Clusters象一个单一的系统一样工作,任何节点的故障都不会影响其他节点对数据的访问。所以说增加服 务器就增加了系统的可靠性。另外一点,对用户来说RAC是一个数据库系统,对它的维护管理如同单机一样简单方便。
 
Microsoft SQL Server和IBM DB2都有active-active 的故障切换方式,为什么我要采用Oracle Real Application Cluster 10g ?
其他的数据库系统都无法 真正的支持 active-active方式的集群系统,即集群的两个节点可以支持同样的应用。实际上,他们只能支持双向的active-passive 架 构,即节点 A 运行应用A,同时节点B 运行应用B,每个节点作为另一个节点的备份节点。但是同样的应用无法同时运行在两个不同的节点。在Oracle Real Application Cluster 10g 中,同样的应用可以运行在两个或更多的节点,每一个节点都可作为所有其它节点的备份机。当 出现单点故障时,整个Real Application Clusters数据库系统的效率只会有很小的降低。
 
我的分布式应用 系统运行非常好,为什么我要把我的数据库进行集中?
如果您的应用系统正运行 于Oracle上,他们当然可以支持您的业务需求。但是集群的数据库可以让您管理更少的数据库,意味着更 少的管理成本。同时如果您把数据集中到Oracle Real Application Cluster 10g 上,您可以提高整个系 统的可用性,达到99.99%甚至更高。
 
我们已经有了集 群硬件环境,并且可以进行应用的切换,为什么我还需要Oracle Real Application Clusters 10g?
当您在集群环境下运行您 的应用,如果不采用Oracle Real Application Clusters 10g 的话,您的应用是运行于单例程状态下。虽然您的服务 器是集群的一部分,但实际上相当于只运行在一台单机上。在硬件集群环境下,如HP ServiceGuard、 Sun Cluster 和 Microsoft Cluster Services, 您可以在集群的任何一个 节点重新启动 Oracle数据库 (因为硬盘可以共享). 这就是我们所说的 ‘cold failover’。’Cold failover’ 切 换速度依赖于相关硬件资源的切换速度,这可能需要5到 25 分钟的时间恢复。如果使用Oracle Real Application Clusters 10g, 在服务器发生故障时,其他存活的服务器可以自动快速的恢复故障服务器的例程。Oracle Real Application Clusters 10g 可以提供业界最快的系统恢复,在60秒内可以对系统故障进行恢复,这至少比硬件的 ‘cold failover’方 案快5倍。
我们使用Data Guard来实现故障切 换,为什么我还需要Oracle Real Application Clusters 10g?
使用Data Guard来保护您的数 据是一个正确的选择 - Data Guard可以在各种故障情况(无论是数据坏块还是人为失误)下保护您的数据,Data Guard 也确实提供故障切换的功能,但是切换时间可能会需 要10分 钟,RAC可 以提供低于60秒的切换。同时RAC还可以提供无限的伸缩性,Data Guard 只能提供有限的伸缩性。RAC和Data Guard提供100% 技术来最大程度地保护 您的数据库应用。
 
为什么选择Linux? 为什么选择Linux 环境下的Oracle Real Application Clusters 10g?
采用SMP UNIX服务器的原因是他 们在过去可以为您的业务系统提供高可用性和伸缩性。在今天对成本非常敏感的环境下,我们需要一种低成本的可以提供高可用性和高质量的系统。通过把您的应用 系统迁移到Linux环境下的Oracle Real Application Clusters 10g ,您可以得到比SMP服务器更好的可用性,同时可以方便地扩充您的系统,最关键的是总体拥有成本可以控制的很 低。使用小型 Intel 服务器构建集群成本远远低于大型的SMP 服务器,同时可以拥有无限的伸缩性。
 
Oracle Real Application Clusters只是Oracle Parallel Server的新的版本, 是吗?
Real Application Clusters是一个全新的产品,10g 是它的第二个版本。在RAC中,我们有多项新的专利技术,专注于如何为应用系统创建一个高可用性、高伸缩性和高效的集 群系统,而无需修改现有的应用系统。同时,我们在RAC的易管理性上作了大量工作。 RAC系统架构把所有复杂的内部结构都封装起来,对开发人员和用 户完全透明。
 
您认为Oracle RAC的典型硬件配 置是什么样的?
首先我们知道 RAC选件支持所有的Oracle数据库支持的平台,如: Windows, Linux, Solaris, HP-UX等等。所以无论您选择什么样的系统,RAC都可以非常好的运行。如果是 系统选型,那要取决于您的应用需求。我们可以看到Windows 和Linux平台都是常用的基于Intel架构的平台,RAC 在这些平台都有很好的表现,这意味着您可以以低成本得到更高的可用性、可靠性和伸缩性。同 时,RAC可 以在任何价位上获得良好的性能,您可以在HP SuperDomes、Sun boxes或Linux/Windows Intel 服务器上非常方便地配置RAC。

本文出自 “测试与交流” 博客,请务必保留此出处http://linkyou.blog.51cto.com/1332494/283264

jdbc连接遭遇RAC设备的更多相关文章

  1. jdbc 连接 oracle rac

    jdbc 连接 oracle rac 的连接串如下:   jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192. ...

  2. JDBC连接oracle RAC数据库配置

    RAC的配置如下: node1:ip地址192.168.60.132,实例名:rac1,主机名:rac1 node2:ip地址192.168.60.144,实例名:rac2,主机名:rac2 RAC服 ...

  3. jdbc连接rac的oracle数据库

    jdbc连接rac的oracle数据库需要配置所有racIP,如下: DB1 =(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(H ...

  4. jdbc-connect-oracle12c-pdb/cdb(jdbc连接oracle12c的pdb和cdb)

      1       本文简介: 通过特意引发问题,聚焦问题,解决问题,并循序渐进 最后总结jdbc连接oracle12c中cdb和pdb的条件. 软件环境:Redhat7.1+orcacle12c 2 ...

  5. 【转帖】置高并发jdbc连接池

    简单的MySQL连接池 <Resource type="javax.sql.DataSource" name="jdbc/TestDB" factory= ...

  6. JDBC连接SQL Server代码模板

    *                  JDBC连接SQL Server数据库 代码模板* Connection: 连接数据库并担任传送数据的任务:* Statement :  执行SQL语句:* Re ...

  7. JDBC连接MySQL数据库代码模板

    下面这个例子是最简单的JDBC连接MySQL数据库的例子. 一般步骤: 1.注册驱动: 2.建立连接: 3.创建语句: 4.处理结果: 5.释放资源. 注意: 1.软件开发环境:MyEclipse 8 ...

  8. Java操作Sqlite数据库-jdbc连接

    Java操作Sqlite数据库步骤: 1. 导入Sqlite jdbc 本文使用sqlite-jdbc-3.7.2.jar,下载地址 http://pan.baidu.com/s/1kVHAGdD 2 ...

  9. Field 'id' doesn't have a default value(jdbc连接错误)

    JDBC 连接错误: 编写数据库连接增添数据时,出现以下错误: error : java.sql.SQLException: Field 'id' doesn't have a default val ...

随机推荐

  1. pymongo处理正则表达式的情况

    在python里使用pymongo处理mongodb数据库,在插入或者查询的时候,我们有时需要使用操作符号,如set,in, 具体操作符的可以参考  https://docs.mongodb.com/ ...

  2. 如何通过Spring读取Properties文件

    1 在Spring中配置文件中, 配置配置文件的引用     <util:properties id="settings" location="/WEB-INF/c ...

  3. CROC 2016 - Elimination Round (Rated Unofficial Edition) F - Cowslip Collections 数论 + 容斥

    F - Cowslip Collections http://codeforces.com/blog/entry/43868 这个题解讲的很好... #include<bits/stdc++.h ...

  4. logstash部署及基本语法(二)

    一.logstash介绍 Logstash是一个开源的数据收集引擎,可以水平伸缩,而且logstash是整个ELK当中拥有最多插件的一个组件,其可以接收来自不同源的数据并统一输入到指定的且可以是不同目 ...

  5. 004 Ajax中传输格式为JSON

    一: 1.介绍 2.嵌套 3.json解析 4.优缺点 二:json功能程序测试 1.设计 2.程序 <!DOCTYPE html> <html> <head> & ...

  6. 2017-2018-1 20179202《Linux内核原理与分析》第九周作业

    进程的切换和系统的一般执行过程 1.知识总结 (1)进程调度的时机: 中断处理过程直接调用schedule(),或者返回用户态时根据need_resched标记调用schedule(). 内核线程是一 ...

  7. [js]事件篇

    一.事件流 1.冒泡事件:从特定的事件到不特定事件依次触发:(由DOM层次的底层依次向上冒泡) (1)示例: <html onclick="add('html<br>')& ...

  8. Java 初相识

    Java是如何出现的呢?这就要回到1991年,那时候随着单片机的发展,出现了很多微型的系统,Sun公司在这个时候就成立的一个项目组,成员就有我们熟知的“Java之父” 詹姆斯·高斯林,起初的目标是为了 ...

  9. 洛谷——P2936 [USACO09JAN]全流Total Flow

    题目描述 Farmer John always wants his cows to have enough water and thus has made a map of the N (1 < ...

  10. awk 基本函数用法

    gsub函数有点类似于sed查找和替换.它允许替换一个字符串或字符为另一个字符串或字符,并以正则表达式的形式执行.第一个函数作用于记录$0,第二个gsub函数允许指定目标,然而,如果未指定目标,缺省为 ...