为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
- 【TiDB 版本】:4.0.6
- 【问题描述】:通过BR定时进行全量备份,那么我使用这个全量恢复的时候,怎么能够把全量恢复完成以后,继续把数据恢复到当天的时间点呢?
若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。
为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。
如果没有超出 tidb gc 时间, 可以使用 ticdc 或者 tidb-binlog 增量同步数据.
br 备份完成呀欧 backup last ts 可以作为增量起始点
我的意思如下:
我9点做了一个数据库全备份,然后下午4点想通过这个全备份恢复数据库的数据到下午3点,这个怎么来实现?这个期间我没有做增量备份。
有没有案例什么的?
已经看了,能不能给个思路??
按照传统数据库的方法是先恢复全备份,然后接着前滚归档日志就可以了,那么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
是这个意思。是不是我没有说明白
当前 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-使用文档