switchover主备切换

【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】备租户开启日志归档模式–> 将主租户切换为备租户–> 将备租户切换为主租户1.备租户开启归档模式这步骤如果调换为主切备、备切主,然后再开启切完的主租户再开启日志归档,然后给切完的备租户设置日志恢复源,这样能成功吗,我试了一下似乎不再同步了,我想问一下这是为什么。
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)

【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!

在这个情况下,由于主备切换后再开启日志归档模式,可能会出现备租户无法同步数据的情况,这可能是因为日志归档设置未被正确地传播到备租户,或是在主备切换过程中,主库与备库之间的日志传输机制出现了中断。

为了更准确地判断具体原因,建议使用 obdiag 工具进行日志采集,以便于进一步分析问题。

日志采集场景: 日志归档问题
日志采集命令: obdiag gather scene run --scene=observer.log_archive

推荐您按照上述命令收集相关信息,并将收集到的日志文件提供给我们以便进一步分析。

为了能够更有效地解决您的问题,还需要了解以下几个方面的情况:

  1. 主备切换的具体操作步骤,包括执行时间点和使用的命令。
  2. 开启日志归档模式的时间点及配置参数。
  3. 备租户的数据同步状态变化情况,例如从正常到异常的时间点。
  4. 在执行上述操作期间是否有任何报警信息或异常日志记录。
  5. 目前集群的版本信息,以及是否进行了任何版本升级或补丁安装。

附上敏捷诊断工具 obdiag 使用帮助链接

你要求我采集的文件太大了,我传不上去,我主备切换的具体操作就是通过switchover先将主租户切为备租户、然后将备租户切为主租户,然后开启主租户的归档,然后设置备租户的日志恢复源。然后就发现并没有进行日志同步了主备租户之间


我观察发现我备租户的SYNC_SCN也不增长了,现在备租户切主也没办法,好像只能把备租户给删了,这该怎么办

你这个是做测试么?还是了解基于归档模式下主备切换的方式?

我想测试下基于归档模式的主备切换并且了解

ob使用的是哪个版本

查看switchover操作历史

  1. 在系统租户的sql 客户端上执行如下查询
    SELECT * FROM DBA_OB_ROOTSERVICE_EVENT_HISTORY
    WHERE EVENT LIKE “%switchover to%” ORDER BY TIMESTAMP;

查看switchover同步完成后的准备切换位点

  1. 在系统租户的sql 客户端上执行如下查询
    SELECT * FROM DBA_OB_ROOTSERVICE_EVENT_HISTORY
    WHERE EVENT = “wait sync to latest end” and extra_info like “%tenant id:100X%” ORDER BY TIMESTAMP;

oceanbase4.2.5.5

按照上面的信息 查一下


这是第一个sql查出来的结果


这是第二个sql查出来的结果

在备租户查看一下
select SCN_TO_TIMESTAMP(min(end_scn)),current_timestamp(6), ls_id, svr_ip,svr_port
from GV$OB_LOG_STAT
where TENANT_ID=100X and role=‘LEADER’;

SELECT MIN(SYNC_SCN) FROM CDB_OB_LS WHERE TENANT_ID=10XX;