南大通用GBase 8a(gbase database)数据库在线备份技术原理:
库级增备流程
和全备的区别:
增加两个处理步骤:
- 从远端备份路径下的备份文件中获取上一个备份点表的元数据信息
- 对比表的当前元数据与上一个备份点的差异,确定本次增量备份的备份内容
流程:
- 开始库级备份
- 加库的读锁,避免备份期间库被删除
- 启动写时复制,备份期间不阻塞 DDL/DML
- 准备备份清单,获取库下所有表的列表
- 划分备份批次,由于库下的所有表可能会比较多,备份的时候会划分备份批次,一批次一批次的进行备份操作
- 获取一批次需要备份的表
- 每张表设置备份状态
- 获取上一次备份的表元数据
- 计算表的增量差异
- 执行表的元数据和数据备份,如果备份失败,会将失败的表写入失败列表中去,以便后续再进行尝试
- 完成备份后,将表设置为正常状态
- 重试失败列表中的表,尝试完成备份,重试 3 次,如还未完成,将记录为失败的表
- 重试完成后,设置表为正常状态
- 关闭写时复制
- 释放库的读锁
- 结束库级备份,生成一个库级备份的备份点