자바 웹 프로젝트 와 Oacle rac 연결

2777 단어 OacleRAC
전환 하 다
http://blog.csdn.net/maggiehexu/article/details/6042041
한 환경 에서 사용 되 는 oralce 데이터 베 이 스 는 rac 의 전략 으로 부하 균형 을 이 루 었 으 며, 현재 개발 한 프로젝트 를 이 환경 에 배치 해 야 합 니 다.
이 Oacle 환경 에 IP 2 개 를 설정 했다 고 가정 합 니 다.
[발견]:
PL / SQL 클 라 이언 트 를 사용 하여 IP 의 Oacle 을 연결 할 때 연결 할 수 있 습 니 다.
그러나 웹 프로젝트 를 배치 할 때 전통 적 인 spring 설정 을 사용 하여 특정한 IP 와 연결 할 때 웹 프로젝트 의 시작 이 실 패 했 습 니 다. 오류 보고: 데이터베이스 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>  

웹 서버 의 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>  

좋은 웹페이지 즐겨찾기