首批通过分布式安全可靠测评,为关键业务系统打造
切换主备租户同步方式
更新时间:2025-09-24 11:15:45
本文介绍如何通过 obd 切换主备租户同步方式,支持在 基于网络 和 基于归档 两种同步方式间切换。
前提条件
源端租户(主租户或另一个备租户)需要做过数据备份和日志归档,具体操作可参见 备份与恢复 中 租户备份 部分内容。
操作步骤
此处以存在 clusterA、clusterB 两个集群,并且 clusterA 集群中创建了用户租户 A_a(主租户),在 clusterB 集群中基于网络的方式创建了 A_a 租户的备租户(B_a)为例,将主备租户间的同步方式由基于网络切换为基于归档。
切换同步方式
obd cluster tenant switch-log-source clusterB B_a --type=LOCATION -a 'oss://oceanbase-test-bucket/backup/log?host=****.aliyun-inc.com&access_id=****&access_key=****&delete_mode=delete&checksum_type=md5'命令的详细介绍可在 集群命令组 中搜索 obd cluster tenant switch-log-source 查看。
命令执行输出如下:
Get local repositories ok obshell program health check ok Check obshell version ok Get deployment connections ok source type check ok standby uri checking ok switching log resource ok Trace ID: 588ffb14-42ab-11f0-b3d9-00163e49531b If you want to view detailed obd logs, please run: obd display-trace 588ffb14-42ab-11f0-b3d9-00163e49531b查看租户情况
obd cluster tenant show clusterB -t B_a -g输出如下,
primary_tenant_info展示归档日志的目录路径,表示同步方式已切换为基于归档同步。+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | tenant basic info | +-------------+-------------+--------------------+--------------+---------+---------+-------------+---------------------+---------------------+---------------+-------------+-------------+ | tenant_name | tenant_type | compatibility_mode | primary_zone | max_cpu | min_cpu | memory_size | max_iops | min_iops | log_disk_size | iops_weight | tenant_role | +-------------+-------------+--------------------+--------------+---------+---------+-------------+---------------------+---------------------+---------------+-------------+-------------+ | B_a | USER | MYSQL | RANDOM | 2.0 | 2.0 | 4G | 10000 | 10000 | 5G | 2 | STANDBY | +-------------+-------------+--------------------+--------------+---------+---------+-------------+---------------------+---------------------+---------------+-------------+-------------+ +-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | standby tenant standby info | +---------------------+---------------+-------------+----------------------------+----------+---------------+-------------------+------------------+--------------+ | standby_tenant_name | tenant_status | sync_status | sync_scn_timestamp | err_code | error_comment | switchover_status | switchover_epoch | log_mode | +---------------------+---------------+-------------+----------------------------+----------+---------------+-------------------+------------------+--------------+ | B_a | NORMAL | NORMAL | 2025-06-06 15:46:42.566389 | 0 | | NORMAL | 0 | NOARCHIVELOG | +---------------------+---------------+-------------+----------------------------+----------+---------------+-------------------+------------------+--------------+ +----------------------------------------------------------------------------------------------------------------------+ | standby tenant`s primary info | +---------------------+------------------------------------------------------------------------------------------------+ | standby_tenant_name | primary_tenant_info | +---------------------+------------------------------------------------------------------------------------------------+ | B_a | oss://oceanbase-test-bucket/backup/log?host=****.aliyun-inc.com&access_id=****&access_key=**** | +---------------------+------------------------------------------------------------------------------------------------+ query primary-standby relation ok primary-standby relation topology graph clusterA:A_a └── clusterB:B_a
背景介绍
当主租户无完整日志,但是想使用基于网络的同步方式时,可先基于归档创建备租户,待备租户创建完成后参照本节操作切换主备租户同步方式为基于网络方式。基于归档创建备租户的操作可参见 创建备租户 介绍。
前提条件
已为备租户开启日志持续同步,命令为 obd cluster tenant recover,命令详细介绍可在 集群命令组 中搜索 obd cluster tenant recover 查看。
操作步骤
此处以存在 clusterA、clusterB 两个集群,并且 clusterA 集群中创建了用户租户 A_a(主租户),在 clusterB 集群中基于归档的方式创建了 A_a 租户的备租户(B_a)为例,将主备租户间的同步方式由基于归档切换为基于网络。
切换同步方式
obd cluster tenant switch-log-source clusterB B_a --type=SERVICE -p *******命令的详细介绍可在 集群命令组 中搜索 obd cluster tenant switch-log-source 查看。
命令执行输出如下:
Get local repositories ok obshell program health check ok Check obshell version ok Get deployment connections ok source type check ok Create standbyro user ok switching log resource ok Trace ID: 5b8a866e-42aa-11f0-8eff-00163e49531b If you want to view detailed obd logs, please run: obd display-trace 5b8a866e-42aa-11f0-8eff-00163e49531b查看租户情况
obd cluster tenant show clusterB -t B_a -g输出如下,
primary_tenant_info展示主租户信息,表示同步方式已切换为基于网络同步。+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | tenant basic info | +-------------+-------------+--------------------+--------------+---------+---------+-------------+---------------------+---------------------+---------------+-------------+-------------+ | tenant_name | tenant_type | compatibility_mode | primary_zone | max_cpu | min_cpu | memory_size | max_iops | min_iops | log_disk_size | iops_weight | tenant_role | +-------------+-------------+--------------------+--------------+---------+---------+-------------+---------------------+---------------------+---------------+-------------+-------------+ | B_a | USER | MYSQL | RANDOM | 2.0 | 2.0 | 4G | 10000 | 10000 | 5G | 2 | STANDBY | +-------------+-------------+--------------------+--------------+---------+---------+-------------+---------------------+---------------------+---------------+-------------+-------------+ +-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ | standby tenant standby info | +---------------------+---------------+-------------+----------------------------+----------+---------------+-------------------+------------------+--------------+ | standby_tenant_name | tenant_status | sync_status | sync_scn_timestamp | err_code | error_comment | switchover_status | switchover_epoch | log_mode | +---------------------+---------------+-------------+----------------------------+----------+---------------+-------------------+------------------+--------------+ | B_a | NORMAL | NORMAL | 2025-06-06 15:46:42.566389 | 0 | | NORMAL | 0 | NOARCHIVELOG | +---------------------+---------------+-------------+----------------------------+----------+---------------+-------------------+------------------+--------------+ +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | standby tenant`s primary info | +---------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | standby_tenant_name | primary_tenant_info | +---------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | B_a | IP_LIST=10.10.10.1:2881;10.10.10.2:2881;10.10.10.3:2881,USER=standbyro@A_a,PASSWORD=******,TENANT_ID=1002,CLUSTER_ID=1694680744,COMPATIBILITY_MODE=MYSQL,IS_ENCRYPTED=false | +---------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ query primary-standby relation ok primary-standby relation topology graph clusterA:A_a └── clusterB:B_a