方案 | 描述 | 优点 | 缺点 |
定期全量逻辑备份 | 基于kundb导入导出工具,定期向kundb导出全量的逻辑数据, 恢复时向kundb导入最近全量的逻辑数据。 如每天00:00进行一次全量逻辑备份。 | 1. 数据可视化 2.方便问题排查 3.还原失败不影响数据库的运行状态 4.基于tso可以保证备份时数据的全局一致性 | 1.备份恢复效率一般 2.恢复会丢失定期间隔内的数据 3.如果不及时清理,会占用较多空间 |
定期物理全量备份 | 基于KunDR物理备份恢复工具,定期向kundb备份全量的物理数据,如果kundb基于tso, 可以在全量备份后自动追加一段binlog备份, 以保证全量备份的全局一致性。 恢复时向kundb恢复最近的全量物理数据,再重启kundb,如果kundb基于tso,重启kundb后应用基于最新全量物理备份时刻裁剪的binlog文件。 如每天00:00进行一次全量物理备份。 | 1.备份恢复效率较快 2.备份的数据文件更完整 3.如果基于tso可以保证备份时数据的全局一致性 | 1.备份效率没有定期物理增量高 2.恢复后会丢失定期间隔内的数据 3.如果不及时清理,会占用较多空间 4.如果还原失败,有可能会影响数据库的运行状态 |
定期物理全量备份 + 定期物理增量备份 | 基于KunDr物理备份恢复工具,定期向kundb备份全量的物理数据,在全量备份的基础上,还可以更小时间粒度进行定期的增量物理备份,如果kundb基于tso, 可以在每次物理备份后自动追加一段binlog备份, 以保证每次物理备份的全局一致性。 恢复时向先在本地基于最新的物理全量数据应用物理增量数据,再向kundb恢复应用后的全量物理数据,重启kundb,如果kundb基于tso,重启kundb后应用基于最新增量物理备份时刻裁剪的binlog文件。 如每周一00:00进行一次全量物理备份,周二至周日0:00进行一次增量物理备份。 | 1.相对于只定期物理全量备份占用空间更小 2.备份的数据文件更完整 3.如果基于tso可以保证备份时数据的全局一致性 4.空间占用比只定期全量少 | 1.恢复效率没有定期物理全量高 2.恢复后会丢失物理增量定期间隔内的数据 3.如果不定期清理,会占用较多空间 4.如果还原失败,有可能会影响数据库的运行状态 |
定期物理全量备份 + 定期物理增量 + 实时binlog备份 | 基于KunDR物理备份恢复工具,定期向kundb备份全量的物理数据,在全量备份的基础上,还可以更小时间粒度进行定期的增量物理备份,在每次物理备份后均会自动开始实时的binlog备份,如果kundb基于tso, 可保证每次物理备份的全局一致性。 恢复时需要指定想要恢复的时间点,向先在本地基于最新的物理全量数据应用物理增量数据,再向kundb恢复应用后的全量物理数据,重启kundb,如果kundb基于tso,重启kundb后应用基于指定时刻裁剪的binlog文件。 如每周一00:00进行一次全量物理备份,周二至周日0:00进行一次增量物理备份,每天基于物理备份进行实时binlog备份。 | 1.备份的数据文件更加完整 2.可以恢复到任意时间点, 仅丢失秒级数据 3.如果基于tso可以保证备份时数据的全局一致性 | 1.恢复效率没有(定期物理全量 + 定期物理增量备份)高 2.由于产生了实时binlog备份文件,如果不及时清理,会更多空间 3.如果还原失败,有可能会影响数据库的运行状态 4.部署维护更加复杂,还原重启kundb后需要再手动执行恢复binlog增量命令 |
推荐采用“定期物理全量备份 + 定期物理增量 + 实时binlog备份”,这样在出现问题时,可以恢复到任意时间点, 仅丢失秒级数据。