MAXIMO75_RAC数据库连接

1、AIX RAC 数据库环境IP

10.20.68.101   eam01  
10.20.68.102   eam02  
10.20.68.103    eam01-vip   虚拟节点
10.20.68.104    eam02-vip   虚拟节点

2、MAXIMO75 安装在10.20.68.101机器上

3、MAXIMO75  安装之后,应用服务连接数据库需要修改两个地方

  3.1 

C:\IBM\SMP\maximo\applications\maximo\properties\maximo.properties

 

---客户端  指向  虚拟IP

mxe.db.url=jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.20.68.103)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=10.20.68.104)(PORT=1521))(LOAD_BALANCE=YES)(FAILOVER=YES))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=PROD)(FAILOVER_MODE=(TYPE=SELECT)(METHOD=BASIC)(retries=180)(delay=5))))

mxe.db.driver=oracle.jdbc.OracleDriver

mxe.rmi.port=0

mxe.db.schemaowner=maxprod

mxe.db.password=maximo

mxe.db.user=maxprod

mxe.registry.port=13400

mxe.name=MXServer

  3.2  

C:\WINDOWS\system32\drivers\etc\hosts文件中  (数据库开发人员客户端连接RAC数据库,需要完善这一步,要不然会出现ORA-12545: 因目标主机或对象不存在,连接失败 

127.0.0.1       localhost

10.20.68.101           eam01

10.20.68.102           eam02

10.20.68.103    eam01-vip

10.20.68.104    eam02-vip

 

---- RAC连接的问题ORA-12545  BEGIN  - - - -- --

ORA-12545: 因目标主机或对象不存在问题解决 ,可以通过3.2 解决,也可以考虑在服务器端解决

 

http://yangtingkun.itpub.net/post/468/273645

 

接到RAC数据库的时候经常会出现ORA-12545错误,在METALINK上查询了一下,是Oracle的一个小bug


在远端客户端连接RAC数据库时,通过统一的服务名连接时经常会出现ORA-12545错误。

SQL> CONN NDMAIN@TESTRAC输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******
ERROR:
ORA-12545: 
因目标主机或对象不存在连接失败

警告:您不再连接到 ORACLE
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******
ERROR:
ORA-12545: 
因目标主机或对象不存在连接失败

警告:您不再连接到 ORACLE

本地数据库TNSNAMES的配置:

TESTRAC =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.25.198.224)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.25.198.225)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = testrac)
(FAILOVER_MODE =
(TYPE = SELECT)
(METHOD = BASIC)
(RETRIES = 180)
(DELAY = 5)
)
)
)

Oracle在文档Note:364855.1RAC Connection Redirected To Wrong Host/IP ORA-12545中进行了相信的描述。

并给出了解决方法:修改数据库中的初始化参数LOCAL_LISTENER

SQL> CONN SYS@TESTRAC1 AS SYSDBA输入口令: ****已连接。
SQL> ALTER SYSTEM 
2 SET LOCAL_LISTENER = '(ADDRESS = (PROTOCOL = TCP)(HOST = 172.25.198.224)(PORT = 1521))' -- 更改的是虚拟节点
3 SID = 'testrac1';

系统已更改。

SQL> CONN SYS@TESTRAC2 AS SYSDBA输入口令: ****已连接。
SQL> ALTER SYSTEM 
2 SET LOCAL_LISTENER = '(ADDRESS = (PROTOCOL = TCP)(HOST = 172.25.198.225)(PORT = 1521))' - - 更改的是虚拟节点
3 SID = 'testrac2';

系统已更改。

设置之后,再次尝试连接数据库:

SQL> CONN NDMAIN@TESTRAC输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。
SQL> CONN NDMAIN@TESTRAC
输入口令: ******已连接。

修改之后,没有再次出现同样的错误。

不过Oracle没有认为这个是bug,只是认为是PROBLEM

 

 

参考文档  http://www.ixdba.net/article/d1/1239.html  AIX下oracle10g rac:ora-12545错误解决方案

---- RAC连接的问题ORA-12545  END- - - -- --

 

 

 

 

 

 

 

 

 

 

 

 

 

 

- - - - - - - - -  -关于 oracle RAC的VIP和scan   begin ---------------

 

http://hi.baidu.com/loveyurui/item/ac12d8d6f3c292ca1a72b406

oracle RAC的VIP和scan

    我们都知道Oracle RAC中每个节点都有一个虚拟IP,简称VIP,与公网IP在同一个网段。

    没有VIP时,Oracle客户端是靠“TCP/IP协议栈超时”来判断服务器故障。而TCP/IP协议栈是作为OS Kernel的一部分来实现,不同的OS有不同的阀值,用户获悉数据库异常的时间完全取决于OS Kernel的实现,虽然有些OS允许修改这个阀值,但是会对其它程序产生未知影响。因此,oracle RAC引入了VIP,从而避开对TCP协议栈超时的依赖。

    VIP和IP最主要的不同之处在于:VIP是浮动的,而IP是固定的。在所有节点都正常运行时,每个节点的VIP会被分配到public NIC上;在linux下ifconfig查看,public网卡上是2个IP地址;如果一个节点宕机,这个节点的VIP会被转移到还在运行的节点上。也就是幸存的节点的public NIC这个网卡上,会有3个IP地址。

当一个节点宕机,这个节点真实IP就连接不上了,但是这个节点的虚拟IP是可以连接的,他会自动把客户端的连接请求转接给存活的节点。
在tnsname.ora文件里,指定Address列表,客户端会随机选择一个节点来连接数据库,而不是顺序选择的。
    
VIP特点:
1 VIP是在clusterware安装最后阶段,通过脚本VIPCA创建的;
2 VIP作为一个Nodeapps类型的CRS Resource注册到OCR中,并由CRS维护状态;
3 VIP会绑定到节点的public 网卡上;那么public网卡就有两个地址了;
4 当某个节点发生故障时,CRS会把故障节点的VIP转移到其他节点上;
5 每个节点的Listener会同时在public网卡的public IP和VIP两个地址上监听;
6 客户端的tnsname.ora一般会配置指向节点的VIP;


    从上面第6条可以引出一个问题。如果增加一个节点,那么客户端的tnsname.ora需要加入新增节点的VIP。那么想象一下:多个客户端,增加多个节点,那么维护起来特别麻烦。因此到了Oracle11gR2,引入了一个scan的概念。

    scan,single client access name。简单客户端连接名,这是一个唯一的名称,在整个公司网络内部唯一,并且在DNS中可以解析为三个ip地址,客户端连接的时候只需要知道这个名称,并连接即可, 每个SCAN VIP对应一个scan listener,cluster内部的service在每个scan listener上都有注册,scan listener接受客户端的请求,并foward到不同的Local listener中去,还是由local 的listener提供服务给客户端。
   
    注意:scan不一定要resolve到三个ip,一个也够了。只不过为了防止scan单点故障而推荐3个。

- - - - - - - - -  -关于 oracle RAC的VIP和scan   end---------------

 

 

 

 

 

 

 

 

 

 

 

---local_listener参数的作用!  begin -- - -

 

pmon只会动态注册port等于1521的监听,否则pmon不能动态注册listener,要想让pmon动态注册listener,需要设置local_listener参数。


 

http://warehouse.itpub.net/post/777/472788

---local_listener参数的作用!  end-- - -

 

 

- - - - -local_listener 与 remote_listener 参数说明begin - - - - -

http://blog.csdn.net/tianlesoftware/article/details/6087045

 

 - - - - -local_listener 与 remote_listener 参数说明end- - - - -

 

 

--- AIX下oracle10g rac:ora-12545错误解决方案  begin --- 

http://www.ixdba.net/article/d1/1239$2.html

 

一、问题描述  

操作系统AIX  5L Version 5300-05 64bit,oracle 10g R2 10.2.0.3 for AIX 5L Based Systems (64-Bit) 
当客户端连过来时客户端有时能连通,有时却断开提示错误 
SQL> conn system/oracle@sddzyj 
已连接。 
SQL> conn system/oracle@sddzyj 
ERROR: 
ORA-12545: 因目标主机或对象不存在,连接失败 

警告: 您不再连接到 ORACLE。 
SQL> conn system/oracle@sddzyj 
已连接。 
SQL> conn system/oracle@sddzyj 
已连接。 
SQL> conn system/oracle@sddzyj 
ERROR: 
ORA-12545: 因目标主机或对象不存在,连接失败 

警告: 您不再连接到 ORACLE。 
SQL> 

客户端tns配置 
SDDZYJ =  
  (DESCRIPTION =  
    (ADDRESS_LIST =  
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.37.201.42)(PORT = 1521))  
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.37.201.43)(PORT = 1521))  
      (LOAD_BALANCE = yes)  
    )  
    (CONNECT_DATA =  
      (SERVICE_NAME = SDDZYJ)  
    )  
  )  
服务器端
  
10.37.201.42 ibmsvr1_vip
  
10.37.201.43 ibmsvr2_vip 是虚拟ip(vip)
  
10.37.201.40 ibmsvr1  
10.37.201.41 ibmsvr2 是公网ip  

--- AIX下oracle10g rac:ora-12545错误解决方案  end--- 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值