OceanBase 管理控制台提供高可用、高性能的备份功能,支持针对 OceanBase 集群进行全量备份,支持数据备份和日志备份。

备份原理

OceanBase 是一个读写分离的系统,内部数据按照存储方式,划分为基于 SSTable 格式的基线数据和基于 MemTable 格式的增量数据。OceanBase 的物理备份就是把某次合并的基线数据,以及该次合并后的增量数据 Commit Log 拷贝到异地机房的存储系统中。
  • 基线数据是当前合并落盘的数据之和,被切分为多个分片并复制多个副本,均匀的分散存储在各个 OBServer 的数据文件中。
  • 增量数据是当前合并时间点以后的所有更新数据,一般会存储在 MemTable 的内存表中,同时也会实例化为 Commit Log 文件的形式保存。

备份内容

OceanBase 的备份恢复支持数据库上的任何操作,支持的数据包括用户权限、表定义、系统变量、用户信息、视图信息等逻辑数据以及所有的物理数据。

OceanBase 的备份功能目前支持的最小粒度是集群,即只支持针对整个集群进行数据备份。

备份策略

OceanBase 支持以下两种备份方式:
  • 备份调度策略:

    通过预设的备份调度策略,定期自动备份。可设置每周或每月的固定时间启动一次全量备份,支持同时进行日志备份、过期数据定期清除。创建备份策略之后,自动定期执行备份,您也可以暂停或重启备份调度。

  • 立即备份:

    手动执行一次备份。如果存在正在进行的全量备份,则无法进行手动备份。无论当下是否有进行中的备份策略,都可以手动立即执行一次备份。

备份状态

OceanBase 管理控制台的备份管理页面中实时展示当前集群的数据备份和日志备份状态,包括备份状态、备份文件的大小、最近一次基线备份的时间。

数据备份任务页签中展示所有执行过的备份任务概况,包括 ID开始时间结束时间文件大小(G)状态。支持根据开始时间和文件大小排序。

数据备份任务

日志备份任务页签中展示备份任务概况,包括最新备份时间点延时状态操作,当前每个集群最多可有一个备份任务。

日志备份任务