您好,欢迎访问一九零五行业门户网

Oracle RAC客户端tnsnames.ora相关配置及测试

oracle rac客户端tnsnames.ora相关配置及测试
1.oracle rac服务端/etc/hosts部分内容如下
2.查看服务端的local_listener和remote_listener参数
3.客户端tnsnames.ora配置参考
3.1 10g的版本,监听配置方法如下
3.2 11g的版本,监听配置方法如下
3.3 业务分割,连接到实例1的业务
3.4 业务分割,连接到实例2的业务
4.测试failover功能
1. oracle rac服务端/etc/hosts部分内容如下
#public ip
172.16.7.112  jyracdb1
172.16.7.114  jyracdb2
#virtual ip
172.16.7.113  jyracdb1-vip
172.16.7.115  jyracdb2-vip
#scan ip(11g rac 新特性)
172.16.7.120 jyracdb-scan
2. 查看服务端的local_listener和remote_listener参数
2.1 节点1 oracle用户登录sqlplus / as sysdba
sql> show parameter listener
name                                type        value
------------------------------------ ----------- ------------------------------
listener_networks                    string
local_listener                      string      (address=(protocol=tcp)(host=
                                                172.16.7.113)(port=1521))
remote_listener                      string      jyracdb-scan:1521
sql>
2.2 节点2 oracle用户登录sqlplus / as sysdba
sql> show parameter listener
name                                type        value
------------------------------------ ----------- ------------------------------
listener_networks                    string
local_listener                      string      (address=(protocol=tcp)(host=
                                                172.16.7.115)(port=1521))
remote_listener                      string      jyracdb-scan:1521
sql>
3. 客户端tnsnames.ora配置参考
3.1 10g的版本,监听配置方法如下
需要指定每一个节点的vip
linuxidc =
  (description =
    (address = (protocol = tcp)(host = 172.16.7.113)(port = 1521))
    (address = (protocol = tcp)(host = 172.16.7.115)(port = 1521))
    (load_balance = yes)
    (connect_data =
      (server = dedicated)
      (service_name = linuxidc)
      (failover_mode =
          (type = session)
          (method = basic)
          (retries = 180)
          (delay = 5) 
      )
    )
  )
3.2 11g的版本,监听配置方法如下
11g引进scanip的新特性,即只需要指定scanip,不再需要指定vip,对于rac增加节点不需要再重新配置所有客户端的tnsnames.ora。
当然不用scanip,还用之前的vip也是可以的。
linuxidc_scan =
 (description =
  (address_list =
    (address = (protocol = tcp)(host = 172.16.7.120)(port = 1521))
  )
  (connect_data =
    (service_name = linuxidc)
    (failover_mode =
          (type = session)
          (method = basic)
          (retries = 180)
          (delay = 5) 
    )
  )
 )
3.3 业务分割,连接到实例1的业务
当实例1正常时,固定连接到实例1:
linuxidc1 =
  (description =
    (address_list =
      (address = (protocol = tcp)(host = 172.16.7.113)(port = 1521))
    )
    (connect_data =
      (service_name = linuxidc)
    )
  )
3.4 业务分割,连接到实例2的业务
当实例2正常时,,固定连接到实例2:
linuxidc2 =
  (description =
    (address_list =
      (address = (protocol = tcp)(host = 172.16.7.115)(port = 1521))
    )
    (connect_data =
      (service_name = linuxidc)
    )
  )
4. 测试failover功能
如下面的测试用例:
确定开始随机连接到的是实例2,然后杀掉实例2,
此时查询select instance_name, status from v$instance;,会报错ora-25408,
再次查询,发现已经自动failover到实例1。
c:\documents and settings\administrator>sqlplus jingyu/jingyu@linuxidc
sql*plus: release 11.2.0.1.0 production on tue jul 28 11:04:13 2015
copyright (c) 1982, 2010, oracle.  all rights reserved.
其它类似信息

推荐信息