暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GoldenDB快照库及基本原理

原创 2025-07-18
249

快照库基本原理

快照库,即在生产库上隔离出来一个最小的快照。

快照库创建包括:

  1. DB的每个分片抽取一个备库停止复制
  2. 管理节点上rdb的元数据的备份
  3. GTM的备份。

快速恢复到快照库:

  1. DB节点:停止复制的备机进行升主(中间还有高低水位的修改)
  2. 元数据及GTM:采用备份恢复的方案。

快照库失效:

  1. DB接回主机
  2. 元数据及GTM备份文件清理

与集群备份恢复的差异:

快照库在DB节点上,不做备份,直接将选中的1个备机停止复制(进程依然在运行,只是将复制关系断开)

创建分类

GoldenDB快照库创建包括:

  • 元数据备份
  • Sequence备份
  • 分片选择一个备库停止IO

元数据备份

备份集群相关的元数据,主要包括有数据字典,用户密码,索引信息。

DBPasswdInfos.dat、DictionaryInfos.dat、DictionaryInfos.idx、LoadserverPermission.dat、TableIndexInfos.dat、TableIndexInfos.idx

Sequence信息备份

备份集群相关的Sequence数据,主要包括有自增列所在表的库名,表名,起始值,步长,最小值,最大值,当前值等属性。

sequence_info

备库操作

校验分片是否有符合选择策略的备机,且状态正常。根据设置的等待备机回放时间,选择回放最快的一致性副本,对其进行停止复制操作。

创建流程

校验水位信息

CM向MDS发送获取水位信息请求,校验快照分片的水位是否位于高水位。

校验一致性

一致性快照选择是,创建快照会先停服用于保证租户集群数据一致性,会影响业务运行,适用可停服的业务升级场景。选否,不保证数据一致,适用于24小时不停服业务升级,数据一致性需要业务保证。

集群元数据备份

  • 备份说明

CM向MDS发送元数据备份时,会全量备份该集群下数据字典、密码信息和索引信息。

  • 备份保存路径

配置:元数据存放路径为metadataserver.ini中metadata_backup_dir配置值路径。

default path:$HOME/.metadata_backup_root

会自动生成子目录“DBCluster_集群ID/SNAPSHOT_BACKUP/“SNAPSHOTID”目录/MetaData/”,备份的全量数据文件都存放在这个子目录下。

集群Sequence备份

  • 备份说明

CM向GTM发送Sequence备份请求时,会全量备份该集群下Sequence信息。

  • 备份保存路径

配置:Sequence备份信息存放路径对应gtm.ini中seq_backup_dir配置值路径。

default path:$HOME/seq_backup_root

会自动生成子目录“DBCluster_集群ID/SNAPSHOT_BACKUP/“SNAPSHOTID”目录/Sequence/”,备份的全量数据文件存放在这个子目录下。

DN快照

  1. 获取主DB的binlog位置,指定全局一致性时刻
  2. 根据策略选择回放最快的备机

快照恢复流程

恢复流程说明如下:

  1. 对集群的元数据进行恢复。
  2. 对集群的Sequence进行恢复。
  3. 通知MDS降水位(1:1)
  4. 重置快照DN状态
  5. 快照DN升主
  6. 快照DN开启监控线程。
  7. 清理元数据备份。
  8. 清理Sequence备份。
  9. 恢复Group中其余的DN。

快照库失效流程

失效流程说明如下:

  1. 清理元数据备份。
  2. 清理Sequence备份。
  3. 停止复制的DN启用复制。

对系统的影响

  • 创建和恢复快照过程需要CN停服,影响业务运行。
  • 创建、恢复快照与备份恢复、导入导出操作互斥。
  • 快照生命周期(新增快照成功-恢复/失效快照成功),不允许对快照DB进行一键恢复,分片恢复跳过该DB,不进行集群恢复。

综合以上影响,建议创建恢复操作与批业务操作放在不同的时间段执行。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论