阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Data Guard中快速Switchover,Failover的一些建议

137次阅读
没有评论

共计 1337 个字符,预计需要花费 4 分钟才能阅读完成。

其实对于 Failover 和 Switchover 是大家处理灾难时很头疼的一个环节,也是最关键的处理过程。

假设你半夜正在睡觉,被报警电话惊醒,得知某个服务器产生了故障宕机,在这种情况下,我们大体会有下面的处理流程:

1)检查原来的节点是否可用,需要查看 ILO 和存储,是否存在异常

2)如果原来的节点可以重启,可以尽量马上恢复业务,然后分析根本原因,是否是硬件老化,硬件故障导致,如果发现问题影响较大,可以使用 Switchover

3)如果原来的节点无法重启,这个时候需要考虑 Failover, 如果在同机房可以直接替换 IP,异地机房需要配合开发,系统运维来修改应用连接 IP

4) 配合系统,开发,检查业务是否恢复正常

这个时候有几个问题就摆在了眼前

1)原来库的防火墙信息在 Failover 之后,备库本身是没有的。这个怎么办,一种临时解决办法就是关闭防火墙,然后允许应用都连接进来,在后台收集连接服务器信息和端口,收集到一定程度之后,开启防火墙,另外一种方式就是从历史的备份中找到,开启防火墙

2)Switchover,Failover 之后,主备库的多监听端口是否一致,要不数据库间通信没问题,很可能应用连接的端口不一而导致连接问题

3)主备库切换后,部分 db link 不可用,究其原因还是 tnsnames.ora 中的主机名配置不够统一,缺少权限导致。

还有更多的细节问题,比较参数文件不统一,内核参数文件不统一导致的配置问题,性能问题。

所以我们需要快速 Swithover,Failover, 数据的切换之外,这些额外的工作花费的时间要远多于切换。

Data Guard 中快速 Switchover,Failover 的一些建议

当然我之前也分析过命令的方式切换,也写过一些脚本辅助。从根本上来说,Switchover 和 Failover 的差别很小,对于备库来说都是透明的,只是一种状态标示。所以我们可以简化 switchover 和 Failover 的一些内容,其实操作上来说,主要的区别就是是否修改 IP,switchover 可能会替换 IP, 而 Failover 可能会修改备库 IP 为原来的主库 IP

在这一点上看起来不好统一,其实进一步分析,如果我们使用主机名的方式在 listenerora,tnsnames.ora,那么在 /etc/hosts 中只需标记一次即可,替换就修改 /etc/hosts 的配置,否则不修改。

而其它的信息就会更加清晰,都提前同步好了,准备好了。

那么可能会有一个问题,就是主库已经是线上业务,这个怎么统一啊,而且处理不当会弄巧成拙,这个担忧是很对的,对于主库没有 200% 的把握不要修改主库的这些信息,主库不能改动,备库可以啊。所以我们可以从备库的层面来规范,始终保证这些配置信息在备库都是标准,规范的配置。这样一来在宕机事件面前,我们的操作及混简单,决定是 switchover 还是 failover 即可。其它的信息都一并修改同步好,提前完成。

至于还有哪些方面需要考虑,暂且想到了图中的方方面面,可以作为我们规范备库的一个方式。

更多 Oracle 相关信息见 Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-06/132436.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-22发表,共计1337字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中