# BR 的使用 - 增量备份

__*BR 使用*__
__*BR 增量备份*__

```
LAST_BACKUP_TS=`br validate decode --field="end-version" -s s3://backup-data/2022-01-30/ | tail -n1`

br backup full\
    --pd ${PDIP}:2379 \
    --ratelimit 128 \
    --storage "s3://backup-data/2022-01-30/incr" \
    --lastbackupts ${LAST_BACKUP_TS}
```
-------------------------------------------------------------
TiDB 集群增量数据包含某个时间段的起始和结束两个快照的差异变化的数据。 增量数据相对比快照数据而言数据量更小,适合配合快照备份一起使用,来减少备份的数据量。

如果想要备份增量数据,只需要使用 br backup 进行备份的时候指定上一次的备份时间戳 --lastbackupts 即可。你可以使用 validate 指令获取上一次备份的时间戳,示例如下:
LAST_BACKUP_TS=`br validate decode --field="end-version" -s s3://backup-data/2022-01-30/ | tail -n1`

注意:
增量备份数据需要与前一次快照备份数据保存在不同的路径下。
GC safepoint 必须在 lastbackupts 之前。TiDB 默认的 GC Lifetime 为 10 min,即默认 TiDB 只支持备份 10 min 内的增量数据。如果你希望备份更长时间的增量数据,则需要调整 TiDB 集群的 GC Lifetime 设置。

br backup full\
    --pd ${PDIP}:2379 \
    --ratelimit 128 \
    --storage "s3://backup-data/2022-01-30/incr" \
    --lastbackupts ${LAST_BACKUP_TS}

以上命令会备份 (LAST_BACKUP_TS, current PD timestamp] 之间的增量数据,以及这段时间内的 DDL。在恢复的时候,BR 会先把所有 DDL 恢复,而后才会恢复数据。