【TiDB 4.0 PCTA 学习笔记】- 3.4 Data Backup and Restore (BR)(备份恢复工具 BR)@3班+张近博

课程名称:课程版本(301)+ 3.4 Data Backup and Restore (BR)(备份恢复工具 BR)

学习时长:18分钟

课程收获:学习并掌握BR完全备份,库备份以及表级备份的方法

课程内容:

1.BR备份的限制
1)只支持tidb3.1及以上版本
2)只支持在全新的集群上进行恢复操作
3)BR备份最好顺序执行,否则不同的备份任务会相互影响
2.BR的备份原理
1)BR向每个tikv节点发送备份或恢复操作命令
2)收到命令后,tikv执行相应的备份或恢复操作,并将数据备份到相应的备份目录
3)备份自动过滤系统库
4)由于br恢复要求新的集群具有对备份文件的完全访问权,因此建议备份到一个公共网络驱动器
5)为了实现更快的备份,可以在每个tikv节点上安装第二块磁盘作为备份,或者在备份完成后转移到备份磁盘
6)在备份之前,需要修改GC时间,使其大于备份时间,update mysql.tidb set variable_value=‘30m’ where variable_name=‘tick_gc_life_time’
自 v4.0.3 起 BR 已经支持自适应 GC,无需手动调整 tikv_gc_life_time.
7)支持表、库、全量备份,备份多库多表可以用逗号隔开
br backup full --pd “${PDIP}:2379” -s “local:///tmp/backup”
br backup db --pd “${PDIP}:2379” --db test --storage “local:///tmp/backup” --ratelimit 120 --log-file backuptable.log
br backup table --pd “${PDIP}:2379” --db test --table usertable --storage “local:///tmp/backup” --ratelimit 120 --log-file backuptable.log
–ratelimit 进行限速 单位MB/s
-L 日志级别
–backupts string 备份开始时间
–checksum 备份完整性校验 默认是打开的

3.BR增量备份操作
1)增量备份需要与前一次全量备份在不同的路径下
2)GC safepoint 必须在 lastbackupts 之前
br backup full --pd ${PDIP}:2379 -s local:///home/tidb/backupdata/incr --lastbackupts ${LAST_BACKUP_TS}、
3)Validate 获取上一次备份的时间戳
LAST_BACKUP_TS= br validate decode --field="end-version" -s local:///home/tidb/backupdata
4.BR还原操作
每个tikv节点需要可以访问全量备份的文件
1)全量恢复
br restore full --pd “${PDIP}:2379” --storage “local:///tmp/backup” --ratelimit 128 --log-file restorefull.log
2)单库恢复
br restore db --pd “${PDIP}:2379” --db “test” --storage “local:///tmp/backup”
–log-file restorefull.log
3)单表恢复
br restore table --pd “${PDIP}:2379” --db “test” --table “usertable” --storage “local:///tmp/backup” --log-file restorefull.log
5.备份异常处理
1)Key locked error:少量报错 不影响数据
2)备份的目标 目录存在数据—清理数据或者更改目录
3)恢复报错 copy sst失败 检查权限问题
4)遇到权限问题 root也不行 需要确认tikv节点是否有访问权限
5)IO错误 基本是tikv写盘系统调用错误 换盘或者格式问题

学习过程中参考的其他资料

同学你好,感谢参与 TiDB 4.0 课程的学习!

本篇笔记逻辑清晰、内容丰富,被评选为优质笔记,将额外获得 20 积分,并在 「TiDB 培训」分类下获得“置顶”权益,积分兑换规则将于近期开放,敬请关注!

期待您继续产出优质内容!

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。