MongoDB数据恢复方案概览

云数据库MongoDB提供了多种数据恢复方案,可满足不同场景下MongoDB数据库的数据恢复需求。

数据恢复至云数据库MongoDB实例

重要

将数据恢复至新实例时,请注意以下事项:

  • 新实例的数据库大版本需与原实例相同。您需要根据原实例的数据库版本选择支持部署的可用区。不同数据库版本的实例,支持部署的可用区不同。关于不同数据库版本实例的可用区限制,请参见使用限制

  • 新实例的存储空间需大于或等于原实例的存储空间。

  • 如果您升级过数据库的大版本,旧版本的备份文件将无法恢复到新版本的数据库中。

  • 恢复数据时新建的实例默认为最新内核小版本。

方案

实例限制

恢复位置

恢复范围

适用场景

恢复云数据库MongoDB单个或多个数据库

云盘版分片集群实例

原实例

  • 全部数据库

  • 部分数据库

误删了某个集合或文档。

MongoDB 3.4、4.04.2版本的本地盘版副本集实例

说明

实例所在地域等限制请参见使用限制

新实例

从备份点新建实例

  • 单节点实例

  • 副本集实例

新实例

  • 全部数据库

  • 部分数据库

说明

仅本地盘版实例支持恢复部分数据库。

对数据的时效性要求不高的场景。

按时间点新建实例

副本集实例

新实例

  • 全部数据库

  • 部分数据库

说明

仅本地盘版实例支持恢复部分数据库。

将数据还原至某个时间点。

分片集群实例

新实例

全部数据库

Key闪回

MongoDB 5.0及以上的分片集群云盘版实例

原实例

部分Key

适用于小部分数据错乱或意外丢失场景,根据数据的闪回Key可对这部分数据进行回档,快速恢复数据。

跨地域恢复数据

  • 副本集云盘版实例

  • 分片集群云盘版实例

新实例

全部数据库

适用于数据监管或容灾恢复等需求场景,可以使用备份文件将数据恢复到跨地域备份所在地域的新实例。

数据恢复至自建数据库

将数据恢复至自建数据库时,您需要将云数据库MongoDB的备份文件下载到本地。如何下载备份文件,请参见下载备份文件

方案

实例限制

注意事项

MongoDB逻辑备份文件恢复至自建数据库

  • 副本集实例,且数据库版本为4.2及以下、存储类型为SSD本地盘。

  • 分片集群实例,且数据库版本为4.2及以下、存储类型为SSD本地盘。

由于MongoDB一直在迭代更新,旧版本的Mongorestore不能兼容新版本的MongoDB。请选择合适的Mongorestore版本,以兼容MongoDB,如何选择Mongorestore版本,请参见mongorestore

MongoDB物理备份文件恢复至自建数据库

副本集实例,且满足以下条件:

  • 实例未开启透明数据加密TDE(Transparent Data Encryption)功能。关于TDE的更多信息,请参见TDE功能

  • 实例的存储引擎:WiredTigerRocksDB。

无。

常见问题

如何恢复更早之前的数据?

实例数据可以恢复到的时间范围,与备份数据的保留天数相关。如果您希望恢复更早之前的数据,请参见长期保留备份

希望将备份数据恢复至原实例,如何进行操作?

分片集群云盘版实例可以使用库表恢复功能将数据恢复至原实例。具体操作,请参见恢复云数据库MongoDB单个或多个数据库

若您的实例不支持通过库表恢复功能恢复至原实例,可以先将备份数据恢复至新实例,然后依次修改原实例与新实例的连接地址和端口信息,或者通过DTS将新实例的数据迁移至原实例。

已下载的备份文件,如何恢复至云数据库MongoDB实例?

已下载的备份文件,不支持直接恢复至云数据库实例。您可以先将数据恢复至自建数据库,然后通过DTS迁移至云数据库MongoDB实例。DTS迁移的具体操作,请参见源为自建MongoDB或云数据库MongoDB的迁移方案

实例类型不支持下载备份文件时,如何将数据恢复至自建数据库?

您可以通过DTS将实例数据迁移至自建数据库中。DTS迁移的具体操作,请参见源为自建MongoDB或云数据库MongoDB的迁移方案