首批通过分布式安全可靠测评,为关键业务系统打造
OceanBase 数据库故障恢复相关问题 FAQ
更新时间:2025-06-23 08:06
问题一: 当 OceanBase 数据库也因为意外断电导致文件损坏、无法正常启动时,该如何使其恢复正常(或者,能够安全导出数据)?,是否也有类似 MySQL 数据库的 recovery (innodb_force_recovery)模式?
答: 如果是集群中的少数派文件损坏,则少数派故障不会导致数据丢失,将机器恢复后按照相应流程重新加入原集群即可,如果是单机环境数据文件损坏,OceanBase 数据库暂时没有对外类似 MySQL 数据库的 recovery(innodb_force_recovery)recovery 模式,所以基本无法直接恢复。
问题二: 如果 OceanBase 数据库的三个副本中,有二个副本出现磁盘故障,对应的本地数据文件损毁,有什么办法可以让该集群起死回生?
答: 集群多数派故障,恢复要求很严格,而且有丢数据风险,暂无对外方案。
问题三: 出于安全考虑,一般会定期进行磁盘备份或快照,将所有磁盘备份到阿里的 OSS(或 AWS S3 等类似介质)。不过由于意外的随机性,日志盘、数据盘 的备份可能没有完全对齐,OceanBase 数据库是否有相应的自动纠错机制去应对这种情况?还是说,如果备份恰好没有对齐,即使从备份中恢复,也将导致无法启动?
答: 可以使用 OceanBase 数据备份功能即可,目前也支持 OSS、S3、COS 备份介质,定期全备 + 持续归档备份。
问题四: 日志盘和数据盘的同步进度无法保证完全一致(毕竟是各自独立的 IO 写入),在这两个备份没有对齐的情况下,恢复数据是否也会因此校验不通过,进而导致无法恢复成功。
答: 不会,比如指定恢复时间戳,可以参见:执行物理恢复。
适用版本
OceanBase 数据库所有版本。