Oracle 11G R2 RAC增加了scan ip功能,在11.2之前,client链接数据库的时候要用vip,假如你的cluster有4个节点,那么客户端的tnsnames.ora中就对应有四个主机vip的一个连接串,如果cluster增加了一个节点,那么对于每个连接数据库的客户端都需要修改这个tnsnames.ora。

引入了scan以后,就方便了客户端连接的一个接口,顾名思义 single client access name ,简单客户端连接名,这是一个唯一的名称,在整个公司网络内部唯一,并且在DNS中可以解析为三个ip地址,客户端连接的时候只需要知道这个名称,并连接即可, 每个SCAN VIP对应一个scan listener,cluster内部的service在每个scan listener上都有注册,scan listener接受客户端的请求,并foward到不同的Local listener中去,还是由local 的listener提供服务给客户端。

scan只是一个名字,这个名字在DNS上解析成三个IP地址(VIP也是一个名字,也要配置一个ip地址阿)

无论cluster有多大(两个节点或者20个节点),都只有三个scan vip,在随机的节点上启动(如果是两个节点,可能三个vip在一个节点,也可能是1+2)

scan主要是简化客户端连接,你如果有20个节点,客户端连接的时候,是不是需要配置20个vip,如果用scan,只需要一个scan name就行了,剩下的事情,scan帮你做了。

至于为什么需要在dns里注册三个,主要是为了尽量提高可用性。
当节点数大于3时,最多也只会有3个SCAN listener,也就是说有的节点上没有scan listener.
如果使用/etc/hosts文件解析scan ip,因为不能做轮训的负载均衡,所以这时候scan ip就只能有一个了。

例如:

oracle 客户端如何连接到ORACLE 11GR2  带有DNS SCAN IP 的数据库服务器

[grid@rac2 ~]$ srvctl config scan
SCAN name: racnode-cluster-scan.racnode.com, Network: 1/192.168.3.0/255.255.255.0/eth0
SCAN VIP name: scan1, IP: /racnode-cluster-scan.racnode.com/192.168.3.231
SCAN VIP name: scan2, IP: /racnode-cluster-scan.racnode.com/192.168.3.233
SCAN VIP name: scan3, IP: /racnode-cluster-scan.racnode.com/192.168.3.232

客户端TNSNAMES.ORA配置

RACDB =
  (DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = racnode-cluster-scan.racnode.com)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = racdb){
    )  )

TNSPING 测试

客户端网络配置指向DNS服务器地址 192.168.3.32

C:\Documents and Settings\Administrator>tnsping racdb

TNS Ping Utility for 32-bit Windows: Version 11.1.0.7.0 - Production on 20-7月 -2010 18:53:50

Copyright (c) 1997, 2008, Oracle.  All rights reserved.

已使用的参数文件:
D:\app\Administrator\product\11.1.0\db_1\network\admin\sqlnet.ora

已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = racnode-cluster-scan.racnode.com)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = racdb)))
OK (80 毫秒)

客户端连接

C:\Documents and Settings\Administrator>sqlplussystem/abcdefg@racdb

SQL*Plus: Release 11.1.0.7.0 - Production on 星期二 7月 20 18:46:15 2010

Copyright (c) 1982, 2008, Oracle.  All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management
OLAP,
Data Mining and Real Application Testing options

SQL> select instance_name from v$instance;

INSTANCE_NAME
----------------
racdb2

SQL> exit

转载于:https://www.cnblogs.com/hllnj2008/p/4063671.html

oracle rac scan ip 用途 原理相关推荐

  1. Oracle 11g RAC SCAN ip的原理及配置

    Oracle 11g RAC SCAN ip的原理及配置   Oracle 11g RAC网格即插即用(GPnP)工作原理: SCAN概念:     先介绍一下什么叫SCAN,SCAN(Single ...

  2. oracle rac dns 配置,oracle 11gR2 rac scan ip 配置(DNS模式)

    oracle 11gR2 rac scan ip 配置(DNS模式) oracle 11gR2 grid的集群,scan ip 采用的是DNS模式,安装完成后 状态如下: [grid@rac1 bin ...

  3. oracle rac理解和用途扩展

    Oracle RAC的优势在于利用多个节点(数据库实例)组成一个数据库,这样在保证了数据库高可用性的情况下更充分的利用了多个主机的性能,而且可以通过增加节点进行性能的扩展.实现Oracle RAC需要 ...

  4. Oracle RAC 修改 IP 地址

    RAC 修改IP 这个操作本身也只有几步操作, 但是它涉及到OCR. 所以要格外小心.一般来说,如果不是必须要修改的话,尽量不要去修改OCR 的东西. 稳定第一. 在做之前,要手动的OCR 进行一个备 ...

  5. Oracle RAC的GES/GCS原理

    一.RAC的GES/GCS原理(1) 为了保证群集中的实例的同步,两个虚拟服务将被实现:全局排队服务(GES),它负责控制对锁的访问.全局内存服务(GCS),控制对数据块的访问. GES 是 分布式锁 ...

  6. oracle rac理论知识

    oracle数据库高可靠性高性能的特性是很多企业需要的,这些年一直给各大政府企业做oracle咨询与规划,实施安装以及维护,回头看看,自己已经忘记大部分oracle rac的整体具体架构理论知识,现在 ...

  7. 金仓KFS for Oracle RAC one node安装部署

    KFS for Oracle RAC one node安装部署 Oracle RAC one node是运行在Oracle RAC集群上的单实例数据库,当实例所在的节点出现问题后,实例可以自动转移到其 ...

  8. scan ip的理解

    这些天做11g的RAC实验,才发现oracle 11g的scan ip这个概念,当时在安装的时候,直接在host文件中加入了一条scan对应的解析,之后安装成功.之后才在网上搜了很多资料,自认为对sc ...

  9. Oracle 11G R2 RAC中的scan ip 的用途和基本原理【转】

    Oracle 11G R2 RAC增加了scan ip功能,在11.2之前,client链接数据库的时候要用vip,假如你的cluster有4个节点,那么客户端的tnsnames.ora中就对应有四个 ...

最新文章

  1. Hibernate:SQL查询 addScalar()或addEntity()
  2. 23种设计模式整体详解
  3. 玩转iOS开发:《iOS设计模式 — 单例模式》
  4. LeetCode:汇总区间【228】
  5. GoldenGate for win安装配置
  6. CCNA学习心得(一)
  7. 畅玩4c刷android 9.0,华为畅玩4C电信版 CyanogenMod 13.0_Android_6.0.1 【HRT_chiwahfj】
  8. Navicat for MySQL中如何新建用户并赋予权限
  9. sql server 死锁排查
  10. STorM32三轴云台控制器PID参数调节(1)
  11. BZOJ 3110 题解
  12. Qt界面无法切换输入法的解决方法
  13. 人工智能真的具有创造力?
  14. 135编辑器点击换图html,这5种换图姿势,只有排版高手才会!
  15. MyBatis中达到where a and (b or c)形式
  16. 人脸识别活体检测之张张嘴和眨眨眼
  17. python xgb模型 预测_如何使用XGBoost模型进行时间序列预测
  18. 卷积神经网络(conv2d参数含义、卷积层、池化层)
  19. 坦克大战类型 坦克WASD前后左右移动的解决方法
  20. Android 开发小仓库

热门文章

  1. React 中 $$typeof 的作用
  2. python云计算2
  3. 消息队列的四大典型使用场景
  4. textField textView输入限制
  5. lvs,keepalived做HA
  6. Devexpress TreeList控件绑定显示父子节点对像
  7. Linux 链接详解----动态链接库
  8. dl,dt,dd,ul,li,ol区别
  9. C#中一道关于多线程的基础练习题——模拟仓库存销过程
  10. Hiberante+jpa,注解生成32字符的Id