`
zhbwww
  • 浏览: 37497 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java web项目与oracle rac 连接

阅读更多
转自http://blog.csdn.net/maggiehexu/article/details/6042041
某环境使用的oralce数据库采用了rac的策略做了负载均衡,现需要将开发的项目部署至该环境,

假设,该oracle环境配置了2个IP。

【发现】:

当使用PL/SQL客户端连接其中一个IP的oracle时,是可以连接的。

但部署web项目时,使用传统的spring配置与某一个IP相连时,web项目启动失败,报错:数据库SID无效,


【解决方法】:

修改spring的配置文件中关于数据源的配置中的数据库连接地址(url),如下:
<bean id="dataSource"  
        class="org.logicalcobwebs.proxool.ProxoolDataSource">  
        <property name="driver" value="${db.driver}" />  
        <property name="driverUrl" value="jdbc:oracle:thin:@(DESCRIPTION =  
          (ADDRESS_LIST =  
                    (ADDRESS = (PROTOCOL = TCP)(HOST =  IP1)(PORT = 1521))  
                    (ADDRESS = (PROTOCOL = TCP)(HOST = IP2)(PORT = 1521))  
                    (FAILOVER=yes)   
                    (LOAD_BALANCE =yes)  
         )  
         (CONNECT_DATA =  
                 (SERVER = DEDICATED)  
                (SERVICE_NAME = 集群的服务名)  
          )  
    )  
    "/>  
        <property name="user" value="${db.user}" />  
        <property name="password" value="${db.password}" />  
</bean>  

web服务器中JNDI的配置方式如下(以下为tomcat中JNDI的配置):

<Context path="/web访问名" docBase="路径" debug="5" reloadable="false" crossContext="true">  
            <Resource  
                name="jndi名"  
                type="javax.sql.DataSource"                       
                url="jdbc:oracle:thin:@(DESCRIPTION =  
          (ADDRESS_LIST =  
                    (ADDRESS = (PROTOCOL = TCP)(HOST = IP1)(PORT = 1521))  
                    (ADDRESS = (PROTOCOL = TCP)(HOST = IP2)(PORT = 1521))  
                    (FAILOVER=yes)   
                    (LOAD_BALANCE =yes)  
         )  
         (CONNECT_DATA =  
                 (SERVER = DEDICATED)  
                (SERVICE_NAME = 集群的服务名)  
          )  
    )"  
                driverClassName="oracle.jdbc.driver.OracleDriver"  
                username="数据库用户名"  
                password="数据库密码"  
                maxIdle="5"  
                maxWait="5000"  
                maxActive="10"/>   
</Context>  
分享到:
评论

相关推荐

    BEA WebLogic Enterprise Platform和ORACLE RAC解决方案

    整体方案采用web server+application server+database server的三层架构,其中WebLogic Server部署为集群以提高性能和用户访问能力,Oracle RAC确保数据库的高可用性和持续运行。这种结构提供了全面的解决方案,兼顾...

    Oracle SOA 套件和 RAC 数据库事务一致性配置指南

    具体来说,对于 Oracle RAC 数据库 10g 的 XA 部署,Oracle SOA 套件支持 Oracle RAC Database 10.2.0.3 及其以上版本(并包括与 Oracle Clusterware 的兼容配置)。要获取所需的补丁列表,请登录 Oracle MetaLink ...

    java web 项目架构及调优

    ### Java Web 项目架构及调优关键知识点 #### 一、背景与问题描述 - **问题背景**:本文讨论了一位名为jackson1225的网友在其Java Web项目的架构和部署方面遇到的问题。该系统的目标是提升服务能力,以应对大规模...

    oracle RAC全攻略3

    从给定的文件信息中,我们可以提取到关于Oracle RAC(Real Application Clusters)与Linux系统高级应用,尤其是WebLogic的配置与管理的关键知识点。以下是对这些知识点的详细阐述: ### Oracle RAC全攻略3 #### 1....

    用Java、JDBC和Web服务进行Oracle 数据库 10g

    【标题】: "Java、JDBC与Web服务在Oracle数据库10g中的应用" 【描述】: 本文将深入探讨如何使用Java、JDBC和Web服务来与Oracle数据库10g进行交互,揭示这些技术在数据库管理和应用开发中的重要性和新特性。 【标签...

    OracleRAC_10.2.0.1升级到10.2.0.4安装配置参考手册

    ### OracleRAC_10.2.0.1升级到10.2.0.4安装配置参考手册 #### 概述 本文档旨在提供一个详细的步骤指南,用于将Oracle RAC (Real Application Clusters) 数据库从10.2.0.1版本升级至10.2.0.4版本的过程。此升级过程...

    Oracle数据库10g:Java, JDBC, Web服务

    本资源聚焦于Oracle 10g与Java、JDBC(Java Database Connectivity)以及Web服务的集成和应用,这些都是构建分布式、高性能应用程序的关键技术。 一、Oracle数据库10g Oracle 10g是Oracle数据库的第十个主要版本,...

    Centos6 + Oracle 11g r2 + nfs搭建RAC环境.zip

    6. **Java标签**:在Oracle RAC环境中,Java可能涉及到使用JVM(Java Virtual Machine)运行数据库相关的应用程序或Web服务。Oracle JDBC驱动程序也常用于连接到RAC数据库。 7. **安全与维护**:在部署完成后,定期...

    Java高端培训教材_Oracle实用教程

    6. **Oracle与Java的集成**:讲解JDBC接口的使用,事务管理,以及如何通过JDBC执行批处理和连接池管理。 7. **实战案例**:可能提供如何使用Oracle数据库支持大型Java应用程序的实例,包括数据库连接池配置、SQL...

    java-Web项目部署步骤之Oracle数据库导入.dmp文件数据

    安装java开发人员需要的工具, 包括jdk、eclipse(或IDEA)、tomcat、oracle 注意:Oracle安装时结束前的口令设置,可以设置开启哪些系统用户,在安装时可以设置。 二、搭建后台数据库 dmp文件要事先放在此文件夹...

    was + oracle集群

    6. **管理与监控**:WAS管理控制台提供了一套全面的工具,用于监控和管理整个集群的状态,包括对Oracle数据库的连接池进行管理和调整。这有助于及时发现和解决问题,维护系统的稳定运行。 7. **安全性**:WAS与...

    java_oracle 达内tts课件 pdf 高清晰

    【Java与Oracle】是IT行业中两个非常重要的技术领域,它们在企业级应用开发中占据着核心地位。Java是一种广泛使用的编程语言,以其跨平台、安全性和高性能而闻名,而Oracle则是全球领先的数据库管理系统,尤其在大...

    oracle webserver完全教程

    6. **Oracle WebServer集成**:学习如何配置WebServer以连接Oracle数据库,通过JDBC驱动进行数据交互,实现动态网页与数据库的无缝对接。 7. **故障排查与性能优化**:学习如何分析数据库性能问题,使用 Explain ...

    Oracle High Availability, Disaster Recovery, and Cloud Services

    Oracle JDBC驱动程序是Java开发者连接Oracle数据库的主要方式,它支持JDBC标准并提供高级特性,如连接池和分布式事务处理。Java还可以使用Oracle Application Express (Apex)进行Web应用开发,这是一款基于浏览器的...

    java电商oracle

    - **负载均衡**:Java的负载均衡库如Nginx和HAProxy,结合Oracle的RAC(Real Application Clusters),保证服务高可用。 5. **性能优化** - **索引优化**:根据查询需求,合理设计Oracle数据库的索引,提高查询...

    oracle技术讲座

    5. Web服务与Oracle:Java的JAX-WS和JAX-RS标准允许开发RESTful和SOAP Web服务,这些服务可以无缝地与Oracle数据库交互,实现数据的远程访问和交换。 6. Java与Oracle Advanced Queuing(AQ):Oracle AQ提供消息...

    Oracle数据库中的Web服务.pptx

    总的来说,Oracle数据库10g在Java和Web服务方面做了大量改进,提供了更高效、安全、可扩展的数据库访问机制,同时增强了与Java应用的集成,以及对分布式环境和Web服务的支持。这些特性不仅提升了开发效率,也为企业...

Global site tag (gtag.js) - Google Analytics