环境:tidb集群,br工具(推荐部署在pd节点上,负责下发备份恢复等指令给tikv节点,主流用法为tikv节点使用nfs client挂载外部存储路径到本地,将tikv上的数据备份到nfs挂载点)
1、下载tiup安装脚本进行安装,并利用tiup在单个虚拟机模拟出集群测试环境
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
tiup --tag shutengtest playground v5.2.2 --db 2 --pd 3 --kv 3 --monitor
2、连接数据库建库建表插入数据
mysql --comments --host 127.0.0.1 --port 4000 -u root -p
create database... use ... create table... insert into...
3、wget官网下载备份恢复所需的工具包,解压后将bin目录添加到环境变量PATH
wget https://download.pingcap.org/tidb-toolkit-v5.2.2-linux-amd64.tar.gz
tar xvzf tidb-toolkit-v5.2.2-linux-amd64.tar.gz
...
4、执行备份
br backup full -s local:/tmp/backup --pd "127.0.0.1:2379" --log-file backup.log
5、另一台机器按同一方法部署集群,再scp备份机器下的/tmp/backup到本地,再执行
br restore full -s local:/tmp/backup --pd "127.0.0.1:2379" --log-file restore.log
验证数据完整。
6、增量备份
先查询上次备份的时间戳 br validate decode --field="end-version" -s local:/tmp/backup |tail -n1再实施本次增量--lastbackupts指定上次备份时间 br backup full -s local:/tmp/backup/inc -pd "127.0.0.1:2379" --lastbackupts 431659014681264129
7、增量恢复 (指令和全量恢复相似,需要依据时间多次恢复)
br restore full -s local:/tmp/backup --pd "127.0.0.1:2379" --log-file restore.logbr restore full -s local:/tmp/backup/inc1 --pd "127.0.0.1:2379" --log-file restore.logbr restore full -s local:/tmp/backup/inc2 --pd "127.0.0.1:2379" --log-file restore.logbr restore full -s local:/tmp/backup/inc**** --pd "127.0.0.1:2379" --log-file restore.log



