Oracle Clusterware 在公共网络上托管节点虚拟 IP (VIP) 地址。节点 VIP 是客户端用于连接到 Oracle RAC 数据库的 VIP 地址。从数据库客户端到 Oracle RAC 数据库实例的典型连接尝试可以总结如下: � 数据库客户端连接到 SCAN(其中包括公共网络上的 SCAN VIP),为 SCAN 侦听器提供有效的服务名称 [SCAN 侦听器然后确定哪个数据库实例托管此服务并将客户端路由到相应节点上的本地或节点侦听器 � 节点侦听器,侦听节点 VIP 和给定端口,检索连接请求并将客户端连接到本地节点上的实例 如果集群上使用多个公网支持客户端通过多个子网连接,则上述操作在给定的子网内执行 如果一个节点出现故障,则 VIP 地址会故障转移到另一个节点,在该节点上 VIP 地址可以接受 TCP 连接,但不接受与 Oracle 数据库的连接。尝试连接到不在其主节点上的 VIP 地址的客户端会收到快速连接拒绝错误,而不是等待 TCP 连接超时消息。当配置 VIP 的网络重新联机时,Oracle Clusterware 将 VIP 故障回复到其接受连接的主节点。通常,VIP 地址会在以下情况下进行故障转移: √ 运行VIP地址的节点出现故障 一个 VIP 地址的所有接口都失败 √ VIP 地址的所有接口都与网络断开连接 Oracle RAC 12c 支持多个公共网络,可以通过不同的子网访问集群。每个网络资源代表其自己的子网,每个数据库服务使用特定网络访问 Oracle RAC 数据库。每个网络资源都是由 Oracle Clusterware 管理的资源,它支持前面描述的 VIP 行为 SCAN 是在您组织的域名服务器 (DNS) 或网格命名服务 (GNS) 中定义的单个网络名称,该网络名称循环使用三个 IP 地址。 Oracle 建议与 Oracle RAC 数据库的所有连接都在其客户端连接字符串中使用 SCAN。传入连接在通过三个 SCAN 侦听器提供请求服务的活动实例之间进行负载平衡。使用 SCAN,即使集群配置发生变化(添加或删除节点),您也不必更改客户端连接。与之前的版本不同,Oracle RAC 12c 中的 SCAN 完全支持多个子网,这意味着您可以为每个希望集群在其中运行的子网创建一个 SCAN。