OceanBase
  • 产品
  • 解决方案
  • 客户
  • 合作伙伴
  • 资源与服务
  • 文档
  • 社区
云控制台登录 / 注册
  • 免费试用
OceanBase AI 数据平台

基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。

一体化能力

TP 事务处理

关键业务稳定运行,保障数据零丢失

AP 实时分析

事务分析一体,驱动智能决策与运营

AI 现代负载

统一多模态数据,支撑生产级应用

关键产品
OceanBase 分布式数据库

首批通过安全可靠测评,面向关键业务

OceanBase 集中式数据库

集中式架构,兼具性能与成本优势

OceanBase AI 数据库

面向 AI 应用与 Agent 的多模数据库

OceanBase AI 湖库

湖库一体的 AI 多模态数据系统

OceanBase DataPilot

企业级 AI 数据分析 Agent

OceanBase Agentbase

企业级 Agent 后端基础设施

OceanBase OAgent

数据库 AI 运维 Agent

OB Cloud

一体化云数据库,提供多云一致体验

OceanBase 数据库一体机

软硬一体,极致性能与高可靠性保障

OceanBase AI 一体机

开箱即用的 AI 数据库一体机

OMA 迁移评估工具

全链路数据库迁移评估

OMS 数据迁移工具

一站式数据传输与同步

OCP 运维管理工具

数据库全生命周期管理

ODC 开发者工具

数据库开发与管控协同

OAS 自治服务工具

数据库智能诊断与自治

通用场景
全场景业务系统 OLTP
实时分析混合负载
异地多活
多基础设施部署
一站式传统数据库升级
混合云部署
一库多芯软硬件混合部署
分布式数据库单机部署
大存储类数据库降本
冷数据归档降本
多实例资源整合
分库分表一体化升级
高并发场景
数据中台
行业解决方案
国有大行和股份制银行核心系统解决方案
区域性银行核心系统解决方案
寿险核心系统解决方案
产险核心系统解决方案
资管交易类系统解决方案
资管 TA 清算类系统解决方案
运营商核心系统解决方案
人社核心系统解决方案
电力核心系统解决方案
行业专区
银行专区

助力银行完成各类核心业务系统升级

保险专区

寿险、产险核心系统升级的更佳选择

零售专区

助力200+零售行业客户规模化落地

DB 大咖说
OceanBase客户-爱奇艺爱奇艺

百亿级卡券业务的“单库双擎”架构升级

OceanBase客户-四川银行四川银行

800个测试用例选定分布式数据库

OceanBase客户-太平洋保险太平洋保险

先难后易,核心系统数据库升级复盘

行业案例
OceanBase客户-交通银行交通银行

核心数据库的“分布式革命”

OceanBase客户-中国移动中国移动

B域核心CRM&BOSS近乎零改造分布式升级

OceanBase客户-理想理想

打造领先的智能制造系统和自动驾驶体验

演讲实录
OceanBase客户-中国联通中国联通

集团应用分布式数据库覆盖B/O/M域

OceanBase客户-国泰海通国泰海通

智能推送系统稳定支撑单日亿级消息处理量

OceanBase客户-中国联合航空中国联合航空

中国首款机票盲盒背后的数据库力量

用户实践
OceanBase客户-北京银行北京银行

最快速度完成40余套系统国产数据库升级

OceanBase客户-VIVOVIVO

替换 MySQL 分库分表,探索成本效益最优

OceanBase客户-滴滴滴滴

数据库大规模运维体系建设及落地实践

合作伙伴
合作伙伴类型
联合解决方案
产业生态伙伴
经销商伙伴
技术服务伙伴
培训认证伙伴
生态联合解决方案
神州信息 x OceanBase 银行核心系统
长亮科技 x OceanBase 新核心系统
中电金信 x OceanBase 金融分布式核心系统
天阳科技 x OceanBase 贷记卡方案
易诚互动 x OceanBase 手机银行方案
恒生 x OceanBase UF3.0/O45/TA/估值方案
商业发行版
云树®数据库软件 ActionDB
服务
支持与服务
提交工单
软件下载
OceanBase 企业版
OceanBase 社区版
OB Cloud
学习
培训与认证
在线课堂
在线体验
开发者
开发者中心
资料
行业报告与白皮书
官方博客
年度发布会资料
开发者大会资料
oceanbase白皮书

金融核心系统数据库升级路径与场景实践

oceanbase白皮书

人社关键业务数据库一体化升级实践

产品文档
oceanbaseOceanBase 数据库
数据库一体机
oceanbaseOceanBase AI 数据库
工具与组件
oceanbaseOB Cloud 云数据库
驱动和中间件
快速上手
OceanBase 数据库
OB Cloud 云数据库
知识库
汇聚常见产品使用问题案例
在线体验

Demo与实验,感受 OceanBase 的核心能力与应用场景

OceanBase 最佳实践
了解 OceanBase 分布式数据库的架构与系统原理
技术博客

技术解析 | 用户实践 | 社区月报

在线课堂

电子书 |视频课程|在线培训

Developer Hub
应用开发Demo | 数据开发与集成工具
问答论坛

快速答疑 | 常见问题 | 技术交流

社区活动

Meetup | 技术公开课

GitHub

查看源码 | 贡献代码 | 建议反馈

加入社区

社区组织 | 社区用户贡献 |开发者贡献

进入社区首页
oceanbase数据库大赛

第六届OceanBase数据库大赛

oceanbase免费课程

《Easy Data x AI》:面向所有 AI 爱好者的 Data 与 AI 基础知识入门教程

切换语言
  • 中文站 - 简体中文
  • International - English
  • 日本站 - 日本語

OceanBase

OceanBase 海扬数据库始创于 2010 年,是完全自主研发的数据库公司。2020年开始独立商业化运作,历经15年大规模核心场景验证,目前是中国数据库的领军企业之一。从分布式数据库到 AI 数据库,为企业提供安全、稳定、可扩展的数据底座,推动数据基础设施全面拥抱 AI 时代。

关于我们

关于 OceanBase最新动态资质荣誉客户专家委员会招贤纳士合作伙伴年度发布会开发者大会

资源与服务

支持与服务文档知识库软件与工具下载培训与认证在线体验数据库专题视频

社区

快速上手开发者中心博客活动学习问答GitHub

数据库百科

分布式数据库国产数据库OLTP 数据库OLAP 数据库HTAP 数据库数据库向量数据库向量检索

联系我们

服务热线:
400-109-0633
商务咨询
培训认证技术支持媒体合作
京公网安备11010802047223号京公网安备11010802047223号
京ICP备20024574号-1
合字B1.B2-20250395
网站服务协议隐私协议安全响应协议
OceanBase 版权所有 © 2026 基础资源和备案服务由阿里云提供
文档反馈
  1. 文档中心
  2. OceanBase 数据库
  3. 分布式版
  4. V5.0.1
  5. 管理数据库
  6. 高可用
  7. 物理备库容灾
  8. 日志传输服务
  9. 配置日志传输服务
  10. 设置日志恢复源
分布式版-V5.0.1
  • 简介
  • 快速上手
  • 应用开发
  • 部署
  • 升级
  • 数据迁移
  • 管理数据库
    • 登录 OceanBase 租户
    • 集群管理
    • 租户管理
    • 日志流管理
    • 副本管理
    • 数据负载均衡
    • 高可用
      • 高可用概述
      • 多副本容灾
      • 物理备库容灾
        • 物理备库概述
        • 功能使用限制
        • 创建备租户
        • 日志传输服务
          • 日志传输服务概述
          • 配置日志传输服务
            • 设置日志恢复源
            • 设置日志恢复终点
          • 查看日志恢复源信息
          • 查看日志同步进度
          • 暂停或开启日志同步
          • 优化日志同步性能
          • 设置日志同步限速
          • 设置日志同步压缩
        • 日志存储服务
        • 角色切换
        • 删除主备租户
      • 仲裁高可用
      • 回收站管理
      • 闪回查询
    • 安全权限
    • 备份恢复
    • 监控指标
    • 日志
    • 性能调优
    • 日常巡检
    • 问题排查
    • 应急处理
  • AP
  • AI
  • 生态集成
  • 实践教程
  • 参考指南
  • 常见问题
  • 版本发布记录
  • 术语
  1. 文档中心
  2. OceanBase 数据库
  3. 分布式版
  4. V5.0.1
  5. 管理数据库
  6. 高可用
  7. 物理备库容灾
  8. 日志传输服务
  9. 配置日志传输服务
  10. 设置日志恢复源

设置日志恢复源

更新时间:2026-07-29 10:39:51

github-fill编辑
编组分享

无论是基于日志归档的物理备库,还是基于网络的物理备库,都需要为备租户设置日志恢复源。两种部署方式的日志恢复源支持随时按需动态修改,同时也支持从一种日志恢复源切换为另外一种日志恢复源。本节将分别从基于日志归档的物理备库场景和基于网络的物理备库场景介绍如何设置日志恢复源。

注意事项

在从一种日志恢复源修改为另一种日志恢复源时,必须保证修改前后其日志恢复源与创建备租户时所指定的源租户一致,即要么使用源租户的日志归档,要么直接指向源租户。如果修改前后的日志恢复源不一致,将会导致备租户的数据错误且无法恢复,需要您重新创建新的备租户。

基于日志归档的物理备库的场景

通过物理备份恢复(带日志)功能创建的备租户,在执行 RESTORE 命令恢复出备租户时已为备租户设置了默认的恢复源,即默认恢复源为主租户或源端的备租户的日志归档目的端,故通常不需要再设置。如果需要将日志恢复源修改为直接指向主租户或源端的备租户,请参考本文中 基于网络的物理备库的场景 的内容重新进行设置。

对于使用其他方式(创建空备租户和使用 BACKUP DATABASE PLUS ARCHIVELOG 功能创建备租户)创建的备租户,如果需要将日志恢复源设置为使用主租户的日志归档,则需要参考以下操作手动设置日志恢复源。

注意

当归档介质为对象存储(例如:阿里云 OSS、Azure Blob、AWS S3 以及兼容 S3 协议的对象存储)时,物理备库运行过程中,如果主租户或源端的备租户更改了备份介质的密钥信息,则需要参考以下操作重新设置日志恢复源。

  1. 使用管理员用户登录备租户或备租户所在集群的 sys 租户。

  2. 执行以下命令,配置备租户的恢复源指向主租户的归档目的端。

    • 备租户所在集群的 sys 租户配置备租户的恢复源

      obclient(root@sys)[(none)]> ALTER SYSTEM SET LOG_RESTORE_SOURCE ='LOCATION=archive_path' TENANT = tenant_name;
      
    • 备租户配置本租户的恢复源

      obclient> ALTER SYSTEM SET LOG_RESTORE_SOURCE ='LOCATION=archive_path';
      

    其中,LOCATION 属性用于指定主租户的归档目的端。

    以下以归档介质为 OSS 或 NFS 时为例。

    阿里云 OSS
    NFS

    当主租户的归档介质为 OSS 时,备租户所在集群的 sys 租户或备租户设置日志恢复源的示例如下:

    obclient> ALTER SYSTEM SET LOG_RESTORE_SOURCE ='location=oss://oceanbase-test-bucket/backup/archive?host=****.aliyun-inc.com&access_id=****&access_key=****' TENANT = standby_tenant;
    
    obclient> ALTER SYSTEM SET LOG_RESTORE_SOURCE ='location=oss://oceanbase-test-bucket/backup/archive?host=****.aliyun-inc.com&access_id=****&access_key=****';
    

    当主租户的归档介质为 NFS 时,备租户所在集群的 sys 租户或备租户设置日志恢复源的示例如下:

    obclient> ALTER SYSTEM SET LOG_RESTORE_SOURCE ='location=file:///data/1/sh_archive' TENANT = standby_tenant;
    
    obclient> ALTER SYSTEM SET LOG_RESTORE_SOURCE ='location=file:///data/1/sh_archive';
    

基于网络的物理备库的场景

通过创建空备租户的方式创建的备租户,在执行 CREATE STANDBY TENANT 命令时已通过 LOG_RESTORE_SOURCE 参数设置了一个默认的日志恢复源,即默认恢复源为直接指向主租户,故通常不需要再设置。如果仍需要将日志恢复源修改为使用主租户的日志归档,则需要您参考本文中 基于日志归档的物理备库的场景 重新设置日志恢复源。

对于使用其他方式(使用备份恢复(带日志)功能创建备租户和使用 BACKUP DATABASE PLUS ARCHIVELOG 功能创建备租户)创建的备租户,如果需要将日志恢复源设置为指向主租户或源端的备租户,则需要参考以下操作通过 ALTER SYSTEM SET LOG_RESTORE_SOURCE 命令手动设置日志恢复源。

步骤一:创建访问视图的专用用户

由于备租户在连接主租户或源端的备租户时,需要访问主租户或源端的备租户的部分系统视图,因此需要有一个访问视图专用用户具备这部分系统视图的查询权限。您可以提供一个主租户或源端的备租户上已有相关权限的用户,也可以在主租户或源端的备租户上为当前备租户专门创建一个新的具备相关权限的用户。

备租户需要访问的系统视图如下:

  • GV$OB_LOG_STAT:用于获取主租户的机器列表、副本服务的日志流 LSN 范围、角色(是否是 Leader)等信息。

    关于 GV$OB_LOG_STAT 视图的更多介绍,参见 GV$OB_LOG_STAT。

  • GV$OB_UNITS:查询主租户的所有 Unit 信息,获取副本状态、Zone 以及 Region 等信息,用于过滤、获取和维护租户机器连接等。

    关于 GV$OB_UNITS 视图的更多介绍,参见 GV$OB_UNITS。

  • GV$OB_PARAMETERS: 用于查询主租户的 cluster_id、tenant_id 等服务必须的元信息。

    关于 GV$OB_PARAMETERS 视图的更多介绍,请参见 GV$OB_PARAMETERS。

  • DBA_OB_ACCESS_POINT: 用于获取访问入口信息。在主租户迁移复制、容灾等场景下,若访问入口发生变化,备租户可以自动感知,不需要用户手动修改。

    关于 DBA_OB_ACCESS_POINT 视图的更多介绍,参见 DBA_OB_ACCESS_POINT。

  • DBA_OB_TENANTS:获取主租户的兼容模式。

    关于 DBA_OB_TENANTS 视图的更多介绍,参见 DBA_OB_TENANTS。

  • DBA_OB_LS: 获取主租户的日志流列表以及日志流状态。

    关于 DBA_OB_LS 视图的更多介绍,参见 DBA_OB_LS。

创建访问视图专用用户并授权的具体操作如下。

注意

OceanBase 数据库的用户名和权限信息是在主备租户之间进行同步,备租户自身不允许创建用户和授予权限。因此,如果当前备租户的源端是另外一个备租户,则需要在对应的主租户上创建访问视图专用用户并授予权限。

MySQL模式

  1. 使用管理员用户登录到主租户。

  2. 执行以下命令,创建一个新用户。

    obclient [oceanbase]> CREATE USER rep_user IDENTIFIED BY '******';
    
  3. 给用户授权。

    以下示例是将 oceanbase 数据库下所有表的 SELECT 权限授予该用户。您也可以仅授予 oceanbase 库下 GV$OB_LOG_STAT、GV$OB_UNITS、GV$OB_PARAMETERS、DBA_OB_ACCESS_POINT、DBA_OB_TENANTS、DBA_OB_LS 等视图的 SELECT 权限。

    obclient [oceanbase]> GRANT SELECT ON oceanbase.* TO rep_user;
    

Oracle 模式

  1. 使用管理员用户登录到主租户。

  2. 创建一个新用户。

    obclient [SYS]> CREATE USER rep_user IDENTIFIED BY '******';
    
  3. 将角色 STANDBY_REPLICATION 授予新用户 rep_user。

    STANDBY_REPLICATION 为系统默认角色,该角色默认包含 CREATE SESSION 系统权限以及对以下视图的查询权限:

    • GV$OB_LOG_STAT
    • GV$OB_UNITS
    • GV$OB_PARAMETERS
    • DBA_OB_ACCESS_POINT
    • DBA_OB_TENANTS
    • DBA_OB_LS
    • DBA_OB_LS_HISTORY

    语句如下:

    obclient [SYS]> GRANT STANDBY_REPLICATION TO rep_user;
    

步骤二:获取主租户或源端的备租户的访问入口信息

基于网络的物理备库在设置日志恢复源时,还需要获取主租户或源端的备租户的访问入口信息,即租户副本所在的 OBServer 节点的 IP 地址及其端口号。

  1. 使用管理员用户登录主租户或源端的备租户。

  2. 执行以下命令,获取访问入口信息。

    • MySQL 模式

      obclient [oceanbase]> SELECT * FROM oceanbase.DBA_OB_ACCESS_POINT;
      

      说明

      如果您当前登录的是 sys 租户,需要通过查询 CDB_OB_ACCESS_POINT 视图来获取访问入口信息。

    • Oracle 模式

      obclient [SYS]> SELECT * FROM SYS.DBA_OB_ACCESS_POINT;
      

    查询结果如下:

    +-----------+-------------+-------------+----------+
    | TENANT_ID | TENANT_NAME | SVR_IP      | SQL_PORT |
    +-----------+-------------+-------------+----------+
    |      1004 | mysql       | xx.xx.xx.22 |    17855 |
    |      1004 | mysql       | xx.xx.xx.23 |    17857 |
    |      1004 | mysql       | xx.xx.xx.24 |    17859 |
    +-----------+-------------+-------------+----------+
    3 rows in set
    

    本示例中,查询的租户有三个副本,如果主租户或源端的备租户为单副本租户,则仅返回一行结果。

步骤三:检查主租户设置

在当前主备架构下,当主租户进行缩容、Transfer 等操作后,容易出现主租户的日志流被删除、日志被回收从而导致备租户日志同步卡住的问题。为了解决该问题,需要在主租户上开启归档模式或者为主租户设置租户级配置项 ls_gc_delay_time。

检查主租户上是否开启日志归档或者设置配置项 ls_gc_delay_time 的方法如下:

  • 检查主租户是否开启归档模式

    1. 使用管理员用户登录主租户或主租户所在集群的 sys 租户。

    2. 查询是否开启归档模式。

      • 主租户所在集群的 sys 租户

        obclient> SELECT LOG_MODE FROM oceanbase.DBA_OB_TENANTS WHERE TENANT_NAME='mysql';
        
      • 用户租户

        MySQL 模式
        Oracle 模式

        MySQL 模式下查询是否开启归档模式:

        obclient> SELECT LOG_MODE FROM oceanbase.DBA_OB_TENANTS;
        

        Oracle 模式下查询是否开启归档模式:

        obclient> SELECT LOG_MODE FROM SYS.DBA_OB_TENANTS;
        

      查询结果的示例如下:

      +--------------+
      | LOG_MODE     |
      +--------------+
      | NOARCHIVELOG |
      +--------------+
      1 row in set
      

      根据查询结果,ARCHIVELOG 表示主租户已开启归档模式;NOARCHIVELOG 表示未开启归档模式,开启归档模式的详细操作参见 开启归档模式。

  • 检查主租户上配置项 ls_gc_delay_time 的值是否大于 0s

    租户级配置项 ls_gc_delay_time 用于配置日志流的延迟删除时间,默认值为 0s,表示未开启日志流延迟删除功能。当设置了配置项 ls_gc_delay_time 并且未开启归档时,一个日志流在满足被删除的条件后会等待一定的时间才会被回收。

    1. 使用管理员用户登录主租户。

    2. 查询主租户上配置项 ls_gc_delay_time 的值。

      obclient> SHOW PARAMETERS LIKE '%ls_gc_delay_time%';
      

      根据查询结果,如果值为 0s ,则表示未设置,用户可以根据需要进行设置。配置项 ls_gc_delay_time 的详细设置方法及说明,参见 ls_gc_delay_time。

步骤四:设置日志恢复源

  1. 使用管理员用户登录备租户或备租户所在集群的 sys 租户。

  2. 执行以下命令,设置日志恢复源。

    • 备租户所在集群的 sys 租户设置备租户的日志恢复源

      ALTER SYSTEM SET LOG_RESTORE_SOURCE ='SERVICE=$ip_list USER=$user_name@$tenant_name PASSWORD=$password' TENANT = standby_tenant_name;
      
    • 备租户设置本租户的日志恢复源

      ALTER SYSTEM SET LOG_RESTORE_SOURCE ='SERVICE=$ip_list USER=$user_name@$tenant_name PASSWORD=$password';
      

    部分参数说明如下:

    • $ip_list:主租户或源端的备租户所在副本的 OBServer 节点的 IP 及 SQL 端口号。此处填写步骤二中获取的信息。如果有多个 OBServer 节点信息,可以不用填写全部 OBServer 节点的信息。
    • $user_name:填写步骤一中创建的访问视图的专用用户。
    • $tenant_name:待连接的主租户或源端的备租户名。
    • $password:访问视图的专用用户对应的用户密码。

    示例如下:

    obclient> ALTER SYSTEM SET LOG_RESTORE_SOURCE = 'SERVICE=11.xx.xx.22:17855;11.xx.xx.23:17857;11.xx.xx.24:17859 USER=rep_user@mysql PASSWORD=******' TENANT = standby_tenant;
    
    obclient> ALTER SYSTEM SET LOG_RESTORE_SOURCE = 'SERVICE=11.xx.xx.22:17855;11.xx.xx.23:17857;11.xx.xx.24:17859 USER=rep_user@mysql PASSWORD=******';
    

    设置成功后,系统租户(sys 租户)或用户租户可以分别通过 CDB_OB_LOG_RESTORE_SOURCE 视图和 DBA_OB_LOG_RESTORE_SOURCE 视图,确认日志恢复源是否修改成功,详细操作请参见 查看日志恢复源信息。

相关文档

查看日志恢复源信息

本文目录

注意事项基于日志归档的物理备库的场景基于网络的物理备库的场景步骤一:创建访问视图的专用用户步骤二:获取主租户或源端的备租户的访问入口信息步骤三:检查主租户设置步骤四:设置日志恢复源相关文档
有帮助
无帮助
反馈
AI