数据库管理354期 2025-08-07
数据库管理-第354期 实战一下RAC下Service的Failback(20250807)
作者:胖头鱼的鱼缸(尹海文) Oracle ACE Pro: Database PostgreSQL ACE Partner 10年数据库行业经验 拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证 墨天轮MVP,ITPUB认证专家 圈内拥有“总监”称号,非著名社恐(社交恐怖分子) 公众号:胖头鱼的鱼缸 CSDN:胖头鱼的鱼缸(尹海文) 墨天轮:胖头鱼的鱼缸 ITPUB:yhw1809 IFClub:胖头鱼的鱼缸 除授权转载并标明出处外,均为“非法”抄袭

在《数据库管理-第352期 从需求看懂Oracle RAC多租户环境的Service(20250729)》中,有人在评论中提出,并没有演示Service的Failback,本期就利用双节点RAC演示环境做一下实战。
1 环境说明
使用Oracle VirtualBox创建两台虚拟机,操作系统为OracleLinux 7.9,数据库为19.15,需要创建的服务信息如下:


2 创建Service
在Oracle用户下创建Service:
srvctl add service -db racdb -pdb racpdb -s db1 -preferred racdb1 -available racdb2 -failback YES

这里我们还可以在两个节点上检查一下监听:


3 模拟故障
3.1 关闭节点1
这里直接关闭虚拟机电源:

在节点2检查数据库与Service状态:

这里可以看到db1的Service已经正常转移到了节点2,对应Service也正常注册到了节点2的监听。
3.2 恢复节点1
这里选择重新启动节点1:

等待操作系统、GI和DB启动完成后检查数据库与Service状态:

这里可以看到db1的Service已经回到了节点1,db1的Service也未在节点2的监听注册。

db1的Service重新注册到了节点1的监听。
总结
本期通过实战可以看到,配置了Failback的Service是会在常驻节点异常恢复后,Service是会回到原指定常驻节点的。
老规矩,知道写了些啥。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




