加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 电商 > 正文

YH12:一篇文章读懂SCAN

发布时间:2021-01-15 04:08:45 所属栏目:电商 来源:网络整理
导读:《YH12:一篇文章读懂SCAN》要点: 本文介绍了YH12:一篇文章读懂SCAN,希望对您有用。如果有疑问,可以联系我们。 单客户端访问名称(SCAN)是Oracle RAC环境中使用的功能,为客户端提供访问集群中运行的任何Oracle数据库的单一名称. 用户可以将SCAN视为RAC数

步骤1假设要么有多个网络接口卡(NIC),打算用于Oracle RAC集群中的公共网络通信,或者有一个要与来自多个网络的IP一起使用的接口地址. 两者都可以各种方式建立,而在任一情况下,Oracle Clusterware层应该能够看到由oifcfg命令确定的多个接口,如下图所示.

步骤2到4使用Oracle Clusterware标准命令,如下图所示.

还要注意,将SCAN添加到网络号2,不会在此网络上自动创建SCAN侦听器. 为了充分利用网络号2上的SCAN,需要在此网络上创建并启动SCAN侦听器.

现在已经创建了另一个SCAN设置,使用不同的子网进行公共通信,并创建了相应的节点VIP,节点侦听器和SCAN侦听器,将需要使用这些SCAN通知数据库如何注册. 数据库实例注册侦听器,特别是SCAN侦听器的原则与Oracle Database 12c相比,与Oracle Database 11.2版相比并没有改变.

使用SCAN配置Oracle数据库

自Oracle Database 11.2以来,SCAN是Oracle RAC数据库配置的重要组成部分,因此,假设使用标准Oracle工具(例如DBCA)创建数据库,则REMOTE_LISTENER参数将默认设置为SCAN.这允许实例向SCAN Listeners注册为远程监听器,以提供有关实例提供哪些服务的信息,当前负载以及关于应将多少个传入连接引导到实例的建议.

在这种情况下,必须考虑LOCAL_LISTENER参数. LOCAL_LISTENER参数应设置为node-VIP.如果需要完全合格的域名,请确保将LOCAL_LISTENER设置为完全限定的域名(例如node-VIP.example.com).默认情况下,在集群配置期间,将在集群中的每个节点上创建节点侦听器.如果要在集群中使用多个子网,则应在初始安装后配置其他节点VIP,如本文“启用多子网络支持扫描”一节中所述.

从Oracle Grid Infrastructure 11g Release 2开始,节点侦听器用完了Oracle Grid Infrastructure主站,并使用指定的端口监听节点VIP(默认端口为1521).

与以前的数据库版本不同,不建议将REMOTE_LISTENER参数设置为服务器端TNSNAMES别名,将主机解析为地址列表条目中的SCAN(例如:HOST = sales1- scan),但使用简化的“SCAN:端口“语法,如下图所示.

注意:如果使用简单的连接命名方法,则可能需要修改SQLNET.ORA,以确保在指定用于客户端名称解析查找的命名方法的顺序时,EZCONNECT在列表中(NAMES.DIRECTORY_PATH =(tnsnames,ldap,ezconnect).

SCAN实现客户端负载均衡

对于使用Oracle SQL * Net 11g第2版连接的客户端,客户端将通过DNS解析SCAN名称来接收三个IP地址. 然后,客户端将通过从DNS接收的列表,并尝试通过接收到的IP之一进行连接. 如果客户端收到错误,它会在向用户或应用程序返回错误之前尝试其他地址. 这类似于当客户端连接字符串中提供地址列表时,客户端连接故障转移在以前版本中的工作原理.

当SCAN侦听器接收到连接请求时,SCAN侦听器将检查提供所请求服务的最少加载的实例. 然后,它会将连接请求重新定向到运行最少加载实例的节点上的本地侦听器. 随后,客户端将被给予本地侦听器的地址. 本地侦听器将最终创建与数据库实例的连接.

文章来自微信公众号:数据和云

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读