Oracle11gR2RAC中的SCANIP

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

成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站建设、成都网站设计、金昌网络推广、重庆小程序开发、金昌网络营销、金昌企业策划、金昌品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联为所有大学生创业者提供金昌建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com

在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

注:这部分摘自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


分享题目:Oracle11gR2RAC中的SCANIP
网页路径:http://scyanting.com/article/jhpdis.html