Docs 菜单
Docs 主页
/
MongoDB Cloud Manager
/ /

从快照恢复分片集群

在此页面上

  • Considerations
  • 恢复快照

当您从快照恢复集群时,Cloud Manager会为您提供所选恢复点的恢复文件。

要了解恢复过程,请参阅恢复概述。

BSON规范 将BSON二进制数据类型 (BinData ) 的默认子类型从2 更改为0 。快照中存储的某些二进制数据可能是BinData子类型2 。 备份会自动检测BinData子类型2的快照数据并将其转换为BinData子类型0 。 如果应用程序代码需要使用BinData子类型2 ,则必须更新应用程序代码以处理BinData子类型0 。

提示

另请参阅:

有关 BSON 规范 的注释 解释此变更的具体细节。

备份恢复文件包括名为restoreInfo.txt的元数据文件。 此文件捕获拍摄快照时数据库使用的选项。 恢复后,数据库必须使用列出的选项运行。 此文件包含:

  • groupName

  • ReplicaSetName

  • 集群 ID (如果适用)

  • 快照时间戳(作为 UTC 时间戳)

  • 恢复时间戳(作为 UTC 的 BSON 时间戳)

  • 上次应用的oplog (作为 UTC 的BSON时间戳)

  • MongoDB 版本

  • storage engine类型

  • mongod 拍摄快照时数据库使用的启动选项

Cloud Manager会在启用负载均衡器时拍摄的集群快照旁边显示警告。 如果从此类快照运行恢复,则存在数据丢失或孤立数据的风险。 有关更多信息,请参阅代理无法停止负载均衡器时的Atlas 备份快照。

所有 FCV数据库必须符合相应的备份注意事项。

您必须确保 MongoDB 部署在恢复期间不会收到客户端请求。 您必须:

  • 使用新主机名恢复到新系统,并在新部署运行后重新配置应用程序代码,或者

  • 确保恢复数据时 MongoDB 部署不会收到客户端请求。

要让Cloud Manager自动恢复快照,请执行以下操作:

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 单击侧边栏中的 Continuous Backup(支持)。

    显示“持续备份”页面。

2
3
4
  1. 选择要恢复备份的时间点。

    恢复类型
    说明
    操作
    Snapshot
    允许您选择一个已存储的快照。
    选择要恢复的现有快照
    Point In Time

    创建一个自定义快照,包括所有操作,直到但不包括所选时间。默认情况下,Oplog 会将数据保存 24 小时。

    示例,如果您选择12:00 ,则恢复中的最后一次操作为11:59:59或更早。

    重要提示:在FCV 4.0中,您无法执行涵盖最近一次备份重新同步之前任何时间的PIT恢复。 有关导致重新同步的条件,请参阅重新同步备份。 本说明应用用于FCV 4.2或更高版本。

    选择DateTime
    Oplog Timestamp

    创建自定义快照,其中包括输入的oplog时间戳(含)之前的所有操作。 oplog Timestamp 包含两个字段:

    Timestamp
    Increment
    作为 32 位序数在该秒内应用的操作顺序。

    输入oplog TimestampIncrement

    副本集上运行针对local.oplog.rs的查询,以查找所需的时间戳。

  2. 单击 Next(连接)。

5
  1. 单击 Choose Cluster to Restore to(连接)。

  2. 填写以下字段:

    字段
    操作
    Project
    选择要将 快照 恢复到的 项目 。
    Cluster to Restore to

    选择要将快照恢复到的集群

    Cloud Manager必须管理目标分片集群。

    警告:自动化操作会删除集群中的所有现有数据。 它会保留现有集群的所有备份数据和快照。

  1. 单击 Restore(连接)。

    Cloud Manager 在其用户界面中记录恢复需要多少存储空间。

6

重要

恢复使用 AES256-GCM 加密的快照后轮换主密钥

如果恢复 Cloud Manager 使用 AES256-GCM 加密的加密快照,请在完成恢复后轮换主密钥

手动恢复进程假定:

  • 目标托管中没有数据。

  • 您尚未使用加密快照。

  • 您尚未启用双重身份验证。

警告

仅当无法运行自动恢复时才手动恢复快照。 如果您确定必须使用手动恢复,请联系MongoDB支持部门以获取帮助。 本节简要概述了手动恢复过程的各个阶段。

手动恢复进程包括以下高级阶段,您可以在MongoDB支持部门的帮助下执行这些阶段:

  1. 使用旧版mongo shell或mongosh连接到每个副本集和配置服务器副本集 (CSRS)。

  2. (可选)。 查看每个副本集和 CSRS 的配置文件。 完成恢复进程后,您可以使用保存的配置文件在恢复的副本集上重建配置。

  3. 准备目标主机。

    • 停止目标主机上运行的所有mongod进程。

    • 配置足够的存储空间来保存恢复的数据。

    • 为数据和日志准备目录。

    • 配置文件添加到MongoDB Server目录,其中包含目标主机的存储和日志路径以及副本和分片角色的配置。

  4. 恢复 CSRS。

  5. 恢复每个分片的副本集。

  6. 重新启动目标集群中的每个mongos进程。

  7. 验证您是否可以连接到集群。

完整的手动恢复过程可在MongoDB Server 4.2文档中找到。 对于MongoDB 4.4或更高版本的部署,请参阅相应版本的手册。

要让Cloud Manager自动恢复快照,请执行以下操作:

1
  1. 如果尚未显示,请从导航栏的 Organizations 菜单中选择包含所需项目的组织。

  2. 如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。

  3. 单击侧边栏中的 Continuous Backup(支持)。

    显示“持续备份”页面。

2
3
4
  1. 选择要恢复备份的时间点。

    恢复类型
    说明
    操作
    Snapshot
    允许您选择一个已存储的快照。
    选择要恢复的现有快照
    Point In Time

    允许您选择日期和时间作为快照的恢复时间目标。 默认, oplog存储存储 24 小时的数据。

    示例,如果您选择12:00 ,则恢复中的最后一次操作为11:59:59或更早。

    重要提示:如果要恢复运行 FCV4.0或更早版本的分片分片集群,则必须启用集群检查点,才能在分分片集群上执行 PIT恢复。如果没有包含您的日期和时间的可用检查点, Cloud Manager会要求您choose another point in time

    重要提示:您无法执行涵盖最近一次备份重新同步之前任何时间的PIT恢复。 有关导致重新同步的条件,请参阅重新同步备份。

    选择DateTime
  2. 单击 Next(连接)。

  3. 如果要恢复运行 或更早版本的分片分片集群,并且您选择了FCV4.0 Point In Time

    1. 出现与所选时间最接近的Checkpoints列表。

    2. 要开始点恢复,您可以:

      • 选择列出的检查点之一,或

      • 单击Choose another point in time (删除检查点)以删除检查点列表,然后从菜单中选择其他日期和时间。

5
  1. 单击 Choose Cluster to Restore to(连接)。

  2. 填写以下字段:

    字段
    操作
    Project
    选择要将 快照 恢复到的 项目 。
    Cluster to Restore to

    选择要将快照恢复到的集群

    Cloud Manager必须管理目标分片集群。

    警告:自动化操作会删除集群中的所有现有数据。 它会保留现有集群的所有备份数据和快照。

  1. 单击 Restore(连接)。

    Cloud Manager在其控制台中记录恢复需要多少存储空间。

6

重要

恢复使用 AES256-GCM 加密的快照后轮换主密钥

如果恢复 Cloud Manager 使用 AES256-GCM 加密的加密快照,请在完成恢复后轮换主密钥

手动恢复进程假定:

  • 目标托管中没有数据。

  • 您尚未使用加密快照。

  • 您尚未启用双重身份验证。

警告

仅当无法运行自动恢复时才手动恢复快照。 如果您确定必须使用手动恢复,请联系MongoDB支持部门以获取帮助。 本节简要概述了手动恢复过程的各个阶段。

手动恢复进程包括以下高级阶段,您可以在MongoDB支持部门的帮助下执行这些阶段:

  1. 使用旧版mongo shell或mongosh连接到每个副本集和配置服务器副本集 (CSRS)。

  2. (可选)。 查看每个副本集和 CSRS 的配置文件。 完成恢复进程后,您可以使用保存的配置文件在恢复的副本集上重建配置。

  3. 准备目标主机。

    • 停止目标主机上运行的所有mongod进程。

    • 配置足够的存储空间来保存恢复的数据。

    • 为数据和日志准备目录。

    • 配置文件添加到MongoDB Server目录,其中包含目标主机的存储和日志路径以及副本和分片角色的配置。

  4. 恢复 CSRS。

  5. 恢复每个分片的副本集。

  6. 重新启动目标集群中的每个mongos进程。

  7. 验证您是否可以连接到集群。

完整的手动恢复过程可以在MongoDB Server文档中找到。

后退

Overview