Oracle11gR2RAC中的SCANIP-创新互联

Oracle 11gR2 中,引入了SCAN(Single ClientAccess Name)的特性。SCAN是一个域名,可以解析至少1个IP,最多解析3个SCAN IP,客户端可以通过这个SCAN 名字来访问数据库,另外SCAN ip必须与public ip和VIP在一个子网。

为北票等地区用户提供了全套网页设计制作服务,及北票网站建设行业解决方案。主营业务为成都网站设计、网站制作、外贸营销网站建设、北票网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

在11gR2之前配置TNS连接串使用的都是VIP,如果RAC集群添加节点或VIP有变化,就需要对所有的客户端的TNS配置进行修改,这样很麻烦,引入SCAN后就省去了这些麻烦。启用SCAN 之后,会在数据库与客户端之间,添加了一层虚拟的服务层,就是SCAN IP和SCAN IP Listener,在客户端仅需要配置SCAN IP的tns信息,通过SCANIP Listener,连接后台集群数据库。这样,不论集群数据库是否有添加或者删除节点的操作,均不会对客户端产生影响,也就不需要修改配置。

1、配置SCAN有3种方法:

1. 使用/etc/hosts文件

这个是我们目前用的最多的方式,但是缺点只能对应一个SCAN IP,该方法Oracle 不推荐,但是简单,不需要单独的DNS 服务器,使用该方法,客户端还是需要VIP来链接。 Oracle 推荐使用其他的2种方法来实现SCAN 功能。

2. 在DNS中定义域名,只需要在DNS中配置即可实现SCAN 功能。

 Oracle 11gR2 RAC中的SCAN IP

3. 通过Grid Naming Server(GNS),需要配置DNS 和DHCP才能实现SCAN 功能。

 Oracle 11gR2 RAC中的SCAN IP

注:这部分摘自David的博客http://blog.csdn.net/tianlesoftware/article/details/42712979,我困惑的是使用第一种方法也可以使用SCAN IP来连接到数据库,但为什么davide说还是需要使用VIP来连接?

配置完成后就可以在TNS连接串用SCAN IP来连接数据库了。

2、SCAN工作流程

在启用SCAN 特性之后,除了多几个SCAN IP 之外,还会多几个SCAN IP Listener,每个SCAN IP对应一个SCAN IP Listener,为了性能考虑,每个SCAN IP以及其对应的SCAN IP Listener将被独立的分配到各个节点上。

Oracle 11gR2 RAC中的SCAN IP

从Oracle给出的图中可以看到,图的右边是一个4个节点的RAC 集群,所以有4个Local Listener。 配置了3个SCAN IP和3个 SCAN Listeners。这3个SCAN IP 是随机的落在RAC节点上。

更多概念性的东西可以参考David的博客:http://blog.csdn.net/tianlesoftware/article/details/42712979。

3、实际管理SCAN

在安装RAC的时候,需要在/etc/hosts文件中配置一条如下的信息:

Oracle 11gR2 RAC中的SCAN IP

启动集群后可以看到关于SCAN的服务,它们被分在集群资源中,可以看到有vip服务和监听服务

Oracle 11gR2 RAC中的SCAN IP

使用srvctl进行管理scan,下面为查看SCAN和SCAN_LISTENER的状态和配置

Oracle 11gR2 RAC中的SCAN IP

下面看看SCAN Listenre的状态,和监听的服务

Oracle 11gR2 RAC中的SCAN IP从上面可以看到这一个SCAN Listener监听着两个实例,这是通过remote_listener参数来实现的。

从上在的配置中可以看出,现在这个集群中只有一个SCAN IP,现在增加一个SCAN IP

先在两个节点的/etc/hosts文件中添加一个新的ip

192.168.56.27  rac-scan

添加完成后,修改SCAN服务

Oracle 11gR2 RAC中的SCAN IP

从上图中可以看到新的IP已经添加到了SCAN服务中,但还没有运行,执行下面命令

Oracle 11gR2 RAC中的SCAN IP

Oracle 11gR2 RAC中的SCAN IP

Oracle 11gR2 RAC中的SCAN IP

从上面的截图中可以看到虽然报错了,但scan2服务仍然启动了,虚拟IP也已经绑定到了网卡上

Oracle 11gR2 RAC中的SCAN IP但现在还只有一个SCAN Listener,下面启动第二个监听:

Oracle 11gR2 RAC中的SCAN IP

Oracle 11gR2 RAC中的SCAN IP

Oracle 11gR2 RAC中的SCAN IP

Oracle 11gR2 RAC中的SCAN IP

启动监听后查看第二个监听是否有数据库服务

Oracle 11gR2 RAC中的SCAN IP测试使用新的SCAN IP连接数据库

Oracle 11gR2 RAC中的SCAN IP

连接成功。

参考:Grid Infrastructure Single Client Access Name (SCAN) Explained (文档 ID 887522.1)

http://docs.oracle.com/cd/E11882_01/rac.112/e41960/toc.htm

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

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文名称:Oracle11gR2RAC中的SCANIP-创新互联
文章转载:http://ybzwz.com/article/pjgce.html