BR全备份恢复

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:4.0.6
  • 【问题描述】:通过BR定时进行全量备份,那么我使用这个全量恢复的时候,怎么能够把全量恢复完成以后,继续把数据恢复到当天的时间点呢?

若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

如果没有超出 tidb gc 时间, 可以使用 ticdc 或者 tidb-binlog 增量同步数据.
br 备份完成呀欧 backup last ts 可以作为增量起始点

我的意思如下:
我9点做了一个数据库全备份,然后下午4点想通过这个全备份恢复数据库的数据到下午3点,这个怎么来实现?这个期间我没有做增量备份。
有没有案例什么的?

先检查 tidb gc 时间, 在看下文档
https://docs.pingcap.com/zh/tidb/stable/ecosystem-tool-user-case

已经看了,能不能给个思路??
按照传统数据库的方法是先恢复全备份,然后接着前滚归档日志就可以了,那么tidb呢???

与增量备份差不多:
需要关注这个 tidb 的 gc 时间和 br 的 lastbackupts.
https://docs.pingcap.com/zh/tidb/stable/backup-and-restore-tool#增量备份

将 lastbackupts 写在 tidb-binlog 的 commit_ts 进行增量同步
或者写在 ticdc --start-ts 中
https://docs.pingcap.com/zh/tidb/stable/manage-ticdc#创建同步任务

你的意思是先把全备份恢复以后,要是接着向前恢复,必须借助以tidb-binlog工具来实现?

根据需求, 是否为定点恢复数据, 如果仅需要恢复到下午 3 点,可以使用 br 增量备份再进行增量恢复.

没有增量备份,就是每天一个全备份。比如我今天0点做了一个全备份,然后下午恢复这个全备份,并且恢复的数据要求到下午3点。这个怎么来实现呢?比如ORACLE我直接前滚归档日志文件就行了,那tidb怎么操作呢?

是不是可以理解为备份恢复到指定时间点?Point in-time recover

:joy:是这个意思。是不是我没有说明白:stuck_out_tongue:

当前 BR 备份暂时不支持 PITR 功能,该功能已有开发计划,敬请关注官网最新消息。

在 PITR 功能未发布之前,如果想做基于时间点的恢复,建议使用 tidb-binlog to file + reparo 做增量备份以及时间点恢复:

https://docs.pingcap.com/zh/tidb/stable/tidb-binlog-overview#tidb-binlog-简介

https://docs.pingcap.com/zh/tidb/stable/tidb-binlog-reparo#reparo-使用文档