Welcome 微信登录

首页 / 数据库 / MySQL / 跨NAT,防火墙(firewall)的RAC监听配置(ORA-12545)

对于存在NAT或防火墙的RAC数据库,在启用了服务器端的load balance后,经常会碰到ORA-12545连接错误,这是因为服务器端转发客户端连接请求到其它节点后,客户端使用返回的IP再次发出连接请求而出现不可识别的IP地址或主机名而造成的。本文描述了这个问题并给出了解决方案。有关RAC监听配置请参考Oracle RAC 监听配置 (listener.ora tnsnames.ora)  http://www.linuxidc.com/Linux/2012-09/71494.htmORACLE RAC 下非缺省端口监听配置(listener.ora tnsnames.ora) http://www.linuxidc.com/Linux/2012-10/72042.htm一、NAT下监听描述图二、配置情况 1、服务器端的配置情况 
 ################Server node 1 listener.ora######################## 
 LISTENER_VMDB01P = 
  (DESCRIPTION_LIST = 
    (DESCRIPTION = 
      (ADDRESS = (PROTOCOL = TCP)(HOST = vmdb01pvip)(PORT = 1314)(IP = FIRST)) 
      (ADDRESS = (PROTOCOL = TCP)(HOST = vmdb01p)(PORT = 1314)(IP = FIRST)) 
    ) 
  ) 
 
 SID_LIST_LISTENER_VMDB01P = 
  (SID_LIST = 
    (SID_DESC = 
      (SID_NAME = PLSExtProc) 
      (ORACLE_HOME = /u01/oracle/db) 
      (PROGRAM = extproc) 
    ) 
  ) 
 
 ################Server node 2 listener.ora######################## 
 LISTENER_VMDB02P = 
  (DESCRIPTION_LIST = 
    (DESCRIPTION = 
      (ADDRESS = (PROTOCOL = TCP)(HOST = vmdb02pvip)(PORT = 1314)(IP = FIRST)) 
      (ADDRESS = (PROTOCOL = TCP)(HOST = vmdb02p)(PORT = 1314)(IP = FIRST)) 
    ) 
  ) 
 
 SID_LIST_LISTENER_VMDB02P = 
  (SID_LIST = 
    (SID_DESC = 
      (SID_NAME = PLSExtProc) 
      (ORACLE_HOME = /u01/oracle/db) 
      (PROGRAM = extproc) 
    ) 
  ) 
 
 ################Server side tnsnames.ora, same for both nodes######################## 
 remote_lsnr_lm5330 = 
  (ADDRESS_LIST = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = vmdb01pvip)(PORT = 1314)) 
    (ADDRESS = (PROTOCOL = TCP)(HOST = vmdb02pvip)(PORT = 1314)) 
  ) 
 
 local_lsnr_lm5330a = 
  (ADDRESS_LIST = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = vmdb01pvip)(PORT = 1314)) 
  ) 
 
 local_lsnr_lm5330b = 
  (ADDRESS_LIST = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = vmdb02pvip)(PORT = 1314)) 
  ) 
 
 ################Server side host table, same for both nodes########################   
 127.0.0.1          localhost 
 10.200.48.17    vmdb01p.oradb.com  vmdb01p 
 10.200.48.18    vmdb02p.oradb.com  vmdb02p 
 10.200.48.15    vmdb01pvip.oradb.com        vmdb01pvip 
 10.200.48.16    vmdb02pvip.oradb.com        vmdb02pvip 
 192.168.48.17  vmdb01pph.oradb.com vmdb01pph 
 192.168.48.18  vmdb02pph.oradb.com vmdb02pph 
 
 SQL> show parameter instance_name 
 
 NAME                                TYPE                              VALUE 
 ------------------------------------ ------------------- ------------------ 
 instance_name                        string              LM5330A 
 SQL> show parameter listener 
 
 NAME                                TYPE                VALUE 
 ------------------------------------ ------------------- ------------------- 
 local_listener                      string              local_lsnr_lm5330a 
 remote_listener                      string              remote_lsnr_lm5330 
 
 SQL> show parameter instance_name 
 
 NAME                                TYPE                VALUE 
 ------------------------------------ ------------------- ------------------ 
 instance_name                        string              LM5330B 
 SQL> show parameter listener 
 
 NAME                                TYPE                VALUE 
 ------------------------------------ ------------------- ------------------ 
 local_listener                      string              local_lsnr_lm5330b 
 remote_listener                      string              remote_lsnr_lm5330 
 
2、客户端tnsnames.ora配置 
 #For NAT client   
 LM5330TKO = 
  (DESCRIPTION = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.255.48.15)(PORT = 1314)) 
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.255.48.16)(PORT = 1314)) 
    (LOAD_BALANCE = yes) 
    (CONNECT_DATA = 
      (SERVER = DEDICATED) 
      (SERVICE_NAME = LM5330) 
        (FAILOVER_MODE =                     
        (TYPE = SELECT)                                                           
        (METHOD = BASIC)                             
        (RETRIES = 180)                                                           
        (DELAY = 5) 
          ) 
    ) 
  ) 
 
 #For non NAT client 
 LM5330VIP = 
  (DESCRIPTION = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.200.48.15)(PORT = 1314)) 
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.200.48.16)(PORT = 1314)) 
    (LOAD_BALANCE = yes) 
    (CONNECT_DATA = 
      (SERVER = DEDICATED) 
      (SERVICE_NAME = LM5330) 
        (FAILOVER_MODE =                     
        (TYPE = SELECT)                                                           
        (METHOD = BASIC)                             
        (RETRIES = 180)                                                           
        (DELAY = 5) 
          ) 
    ) 
  ) 
 
3、客户端hosts文件配置 
 c:windowssystem32driversetchosts 
 10.200.48.15    vmdb01pvip.oradb.com        vmdb01pvip 
 10.200.48.16    vmdb02pvip.oradb.com        vmdb02pvip 
  • 1
  • 2
  • 下一页
Oracle Net Services - Tracing and Logging at a GlanceUbuntu 12.10 下MySQL 5.1.65 解压安装相关资讯      Oracle基础知识  ORA-12545  RAC监听配置 
  • ORA-12545:因目标主机或对象不存在  (06月02日)
  • 查看Oracle 32位还是64位(x86 or   (10/05/2014 19:10:00)
  • 使用数据链时报错ORA-12545/TNS-  (01/02/2014 08:08:39)
  • ORA-12545: 因目标主机或对象不存  (05/09/2015 09:43:51)
  • 客户端使用SCNAIP连接11G RAC数据  (01/02/2014 08:14:07)
  • Oracle 11gR2 RAC连接时ORA-12545  (08/10/2013 10:46:39)
本文评论 查看全部评论 (0)
表情: 姓名: 字数