请教大家一个问题,oracle 10G RAC环境,有两个节点,应用系统正常连接到数据库,没有退出应用系统,我关掉其中一个节点,再使用应用系统时,提示数据库断开连接,只有重新进入应用系统才能用,觉得这样不好,是不是RAC环境就是这样的?
  我想让只要有其中一个节点正常时,应用系统不退出能继续正常使用。

解决方案 »

  1.   

    节点监听配置都是根据netca 配置的,我也不知道哪里错了?
      

  2.   

    我两个节点的名称是 clusternodea 和clusternodeb。
    第三台电脑的名称是DC。以下是节点的listener.ora 的内容:
    # listener.ora.clusternodea Network Configuration File: c:\oracle\product\10.2.0\db_1\network\admin\listener.ora.clusternodea
    # Generated by Oracle configuration tools.SID_LIST_LISTENER_CLUSTERNODEA =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = c:\oracle\product\10.2.0\db_1)
          (PROGRAM = extproc)
        )
      )LISTENER_CLUSTERNODEA =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodea-vip.ren.com)(PORT = 1521)(IP = FIRST))
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.1)(PORT = 1521)(IP = FIRST))
        )
      )以下是节点1的tnsnames.ora 内容# tnsnames.ora Network Configuration File: c:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora
    # Generated by Oracle configuration tools.
    CFTEST =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodea-vip.ren.com)(PORT = 1521))
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodeb-vip.ren.com)(PORT = 1521))
        (LOAD_BALANCE = yes)
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = CFTEST)
        )
      )CFTEST2 =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodeb-vip.ren.com)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = CFTEST)
          (INSTANCE_NAME = CFTEST2)
        )
      )CFTEST1 =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodea-vip.ren.com)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = CFTEST)
          (INSTANCE_NAME = CFTEST1)
        )
      )
    LISTENERS_CFTEST =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodea-vip.ren.com)(PORT = 1521))
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodeb-vip.ren.com)(PORT = 1521))
      )-------------------------------------------------------------------------------------
    以下是节点2的listener.ora内容# listener.ora.clusternodeb Network Configuration File: c:\oracle\product\10.2.0\db_1\network\admin\listener.ora.clusternodeb
    # Generated by Oracle configuration tools.SID_LIST_LISTENER_CLUSTERNODEB =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = c:\oracle\product\10.2.0\db_1)
          (PROGRAM = extproc)
        )
      )LISTENER_CLUSTERNODEB =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodeb-vip.ren.com)(PORT = 1521)(IP = FIRST))
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.2)(PORT = 1521)(IP = FIRST))
        )
      )
    以下是节点2的tnsnames.ora 内容
    # tnsnames.ora Network Configuration File: c:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
    # Generated by Oracle configuration tools.CFTEST =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodea-vip.ren.com)(PORT = 1521))
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodeb-vip.ren.com)(PORT = 1521))
        (LOAD_BALANCE = yes)
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = CFTEST)
        )
      )CFTEST2 =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodeb-vip.ren.com)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = CFTEST)
          (INSTANCE_NAME = CFTEST2)
        )
      )CFTEST1 =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodea-vip.ren.com)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = CFTEST)
          (INSTANCE_NAME = CFTEST1)
        )
      )LISTENERS_CFTEST =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodea-vip.ren.com)(PORT = 1521))
        (ADDRESS = (PROTOCOL = TCP)(HOST = clusternodeb-vip.ren.com)(PORT = 1521))
      )
    ------------------------------------------------------------------------------------
    以下是第3台电脑DC的 listener.ora 内容:
       # listener.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\listener.ora
    # Generated by Oracle configuration tools.SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
          (PROGRAM = extproc)
        )
      )LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
          (ADDRESS = (PROTOCOL = TCP)(HOST = dc.ren.com)(PORT = 1521))
        )
      )以下是第3台电脑DC的 tnsnames.ora 内容:
    # tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora
    # Generated by Oracle configuration tools.CFTEST =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.11)(PORT = 1521))
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.22)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = CFTEST)
        )
      )EXTPROC_CONNECTION_DATA =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
        )
        (CONNECT_DATA =
          (SID = PLSExtProc)
          (PRESENTATION = RO)
        )
      )
      

  3.   

    你的第三台电脑是客户端,不是RAC节点吧,访问的时候配置HOSTS了么?
      

  4.   

    第三台是客户端,没有配置hosts,RAC节点配置hosts了。
      

  5.   

    检查一下,第一个节点down掉后,第一个节点的 vip 是不是绑定到未down掉的第二个节点上了。
    正常情况下,一个节点的down掉后,其vip自动转移的未down掉的另一个节点上。
      

  6.   

    两台节点的hosts文件里我都加下面的内容:192.168.5.1     clusternodea.ren.com        clusternodea
    192.168.5.11    clusternodea-vip.ren.com    vip-clusternodea
    192.168.5.2     clusternodeb.ren.com        clusternodeb
    192.168.5.22    clusternodeb-vip.ren.com    vip-clusternodeb10.0.0.1        clusternodea-priv.ren.com   clusternodea-priv
    10.0.0.2        clusternodeb-priv.ren.com   clusternodeb-priv