重庆oracle认证培训机构

新闻分类

产品分类

热门关键词

联系我们

企业名称:重庆科禄德科技有限公司

联系人:冷老师

手机:17754917523

邮箱:93865813@qq.com

网址:www.cqora.com

地址:重庆石桥铺高创锦业

如何理解Failover故障转移的RAC环境。

您的当前位置: 首 页 >> 新闻资讯 >> 常见问题

如何理解Failover故障转移的RAC环境。

发布日期:2022-01-22 作者: 点击:

如何理解Failover故障转移的RAC环境。

同时,OracleRAC具有HighAvailiablity和LB.而且LoadBalance也有HighAvailiablity).其高可用性的基础是Failover(Failover),它指集群中任何节点的故障都不会影响用户的使用,与故障节点相连的用户将自动转移到正常节点,从用户的感受来看,没有此切换。

一个Oracle10gRAC的失败可以分为三类:


oracle认证培训

1.客户端接口连接器。

2.TAF

3.服务总线。

注:GLOBAL_NAME无法在listener.ora文件中设置,因为此参数对Connect-timeFailover和TransparentApplicationFailover.

1

客户端安装连接时间框架。

Client-SideConnectTimeFailover意味着:如果用户端tnsname中有多个地址,当用户发出一个连接请求时,将首先尝试连接到地址表中的第一个地址,如果该连接失败,就会一直尝试使用另一个地址,直到连接成功或浏览所有地址为止。

Failover的特性:只有在建立连接的时候才有效,也就是说,Failover方法只有在连接启动时才能察觉到节点失败,如果该节点不响应,则自动尝试地址列表中的下一个地址。当连接建立后,节点发生故障时将不进行处理,从客户机的表现就是会话中断,用户程序必须重新建立连接。

支持FAILOVER=ON项,将FAILOVER=ON项添加到客户机的tnsnames.ora中,该参数缺省为ON,因此,客户机即使没有添加此项,也能获得此Failover功能。

2

TAF(TransparentApplicationFailover)

如今,大多数流行的应用系统(例如:weblogic,Jboss)是在应用程序启动时建立一系列与数据库的长连接,以使其在整个生命周期中重复使用。Client-SideConnetTimeFailover的工作方式是,它对应用程序的可用性并没有多大的帮助。

因此在Oracle8.1.5版中,只有新的Failover机制被引入——TAF。TAF指在连接建立后,在应用系统运行期间,如果某一个实例发生故障,与此实例相连的用户将自动迁移到另一个正常状态下。对应用程序来说,这个迁移过程是透明的,不需要用户的干预,当然,这种透明如果被引导,因为用户的未提交事务将回滚。通过Client-SideConnectTimeFailover,用户程序中断,引发连接错误,用户必须重新启动应用程序,TAF这种方法大大改进了HA性能。

TAF的配置也非常简单,并且只需将FAILOVER_MODE配置项添加到客户机的tnames.ora。此项有4个子项需要定义。

1.METHOD:当用户创建与其实例的连接时,用户有两个可选值:BASIC和PRECONNECT。

BASIC:表示当一个节点出现故障时,它会创建一个与其他实例的连接。

PRECONNECT:一开始连接时,与所有实例都建立了一个连接,当出现故障时,立即将其切换到其它路径。

建立多个冗余连接需要消耗较多的资源,这就是利用时间换资源与资源换时间的不同之处,而建立多个冗余连接将消耗更多的资源。

2.TYPE:用来定义在失败发生时如何处理已完成的SQL语句,有两种类型:session和select.

两种方法的不同之处在于,select语句是用来处理一个select语句的。将用户正在执行的select语句传输到新实例,以便在新节点上继续返回后续结果集,并且删除了已返回的记录集。

假定用户在节点1上执行查询,整个结果集总共有100条记录,现在已经返回了10条记录,在这个时间点1停机时,用户连接就会转移到节点2,如果是session模式,这将有必要重新执行查询语句;如果采用select方法,那么剩余的90天记录将从nod2继续。而且已经从区段1中返回的10条记录并没有向用户反复返回,这对用户来说是没有意义的。

很明显,要实现select,Oracle必须为每个session保存更多的东西,包括游标、用户上下文等等,这需要更多的资源,这也是资源交换时间的方案。

3.DELAY和RETRIES:两个参数分别表示重试间隔时间和重试次数。

3

服务发送时间。

Service-SideTAF可视为TAF的一种变种,而Service-SideTAF也是TAF,所有TAF都具有TAF的特性,其次这个TAF在服务器上配置,而TAF在客户端配置。

Client-SideTAF是在客户端修改tnsnames.ora文件进行配置的,如果有大量的客户机使用该数据库,那么每次调整一个微笑就需要将所有计算机更改一次,这样效率低,而且容易出错。结合Service-SideTAF,将FAIL_MODE的配置保存到数据库中,将所有TAF配置保存到数据字典中,使客户机无需进行配置,目前,客户机TNS文件不需要任何TAF配置选项。

在配置参数方面,Service-SideTAF和TAF比InstanceRole(InstanceRole)多了一个概念。在存在多个Instance角色的情况下,可以配置在一个Service中有多个Instance时优先使用哪个Instance来服务用户。有两个可选的用户角色。

PREFERRED:首选实例,具有该角色的实例优先选择服务。

AVAILABLE:后台实例,在PREFERRED实例无效时,用户连接将优先连接PREFERRED实例,而在PREFERRED实例无效时,将被转至AVAILBALE的Instance。

必须配置服务才能使用Server-SideTAF。Service可以在创建数据库时或在创建数据库后进行修改,您可以使用dbca配置向导或命令行进行配置。


本文网址:http://www.cqora.com/news/846.html

关键词:重庆oracle认证培训机构,oracle认证培训机构,oracle认证培训

Z近浏览:

报名咨询

点击咨询报名

QQ群

赛烽达技术群

冷老师

17754917523

加微信咨询

张老师微信.jpg

93865813@qq.com