MySQL备份教程(6)如何选择合适的备份策略和备份工具

TangLu MySQL 2021-04-03 773 0

一、数据容灾能力指标

1、RTO

RTO为Recovery Time Objective,即数据恢复时间目标。代表灾难发生后必须完成数据恢复的时间,这个时间段内服务是不可用的,所以RTO也可以说是服务可允许的最大不可用时间。如果要求服务RTO为30分钟,那么代表接受服务最大不可用时间是30分钟。RTO越小代表容灾系统的恢复能力越强。

2、RPO

RPO为Recovery Point Objective,即数据恢复点目标。代表灾难发生后数据可以恢复到的时间点。比如某系统每天0点进行一次全备,如果系统在凌晨3点出现故障,在没有实时备份的前提下,就会丢失3个小时的数据。极端情况下,系统在23:59出现故障,则会丢失24个小时的数据,那么RPO就是24小时。RPO越小代表系统数据完整性越高。

二、容灾能力如何提升
RPO针对的是数据丢失,RTO针对的是服务宕机时间,两者之间没有必然的联系。最理想的情况是RTO和RPO都为0,这就意味着当灾难发生时系统会立即恢复,而且数据不会丢失。为了降低RTO和RPO可以从以下方面着手:

1、RTO能力提升
· 增加备份频率,缩短备份周期

· 使用物理备份而不是逻辑备份

· 添加延迟从库。恢复流程的自动化

2、RPO能力提升
· 增加备份频率,缩短备份周期

· 搭建Binlog Server备份Binlog。当出现故障时,我们可以基于备份和Binlog做基于时间点的恢复

· 添加延迟从库


在确定备份策略和选择备份工具时应从业务的RTO和RPO出发,结合存储成本综合考虑。通常大多数公司会采取一个统一的备份策略,如一天一个全备,对于线上核心业务,如果只靠备份还是很难有效降低数据库服务的RTO和RPO,可以考虑部署延迟从库

评论