更新时间:2022-05-09 GMT+08:00
分享

备份原理及方案

DDS实例支持自动备份和手动备份,您可以定期对数据库进行备份,当数据库故障或数据损坏时,可以通过备份文件恢复数据库,从而保证数据可靠性。

备份原理

  • 集群实例

    集群实例由Mongos(路由)、Config(配置)和Shard(分片)组件构成。其中,Config主要用于存储集群实例的配置信息,Shard节点主要用于存储集群实例的数据信息。所以集群实例在备份时,需要分别备份Config节点和Shard节点上的数据,且Config节点和Shard节点是分开进行备份的。如图1所示,集群实例的备份是由Config节点和Shard节点分别在各自的Hidden节点上进行,备份过程会占用Hidden节点一定的CPU内存资源。因此,在备份期间,实例的Hidden节点的CPU使用率、内存使用率、主备延时指标会有一点升高,属于正常现象。但最终的备份文件将以压缩包的形式存储在对象存储服务(OBS)中,不会占用实例的磁盘空间。

    图1 集群备份原理图
  • 副本集实例

    图2所示,副本集实例的备份在Hidden节点上进行。备份过程会占用Hidden节点一定的CPU内存资源。因此,在备份期间,实例的Hidden节点的CPU使用率、内存使用率、主备延时指标会有一点升高,属于正常现象。但最终的备份文件将以压缩包的形式存储在对象存储服务(OBS)中,不会占用实例的磁盘空间。

    图2 副本集备份原理图
  • 单节点实例

    单节点的备份是在仅有的一个节点上进行的,最终的备份文件将以压缩包的形式存储在对象存储服务(OBS)中,不会占用实例的磁盘空间。

    单节点的备份基于mongodump实现,备份过程中会额外占用节点的CPU、内存等资源,资源不足时会出现备份失败的情况。建议迁移到副本集实例进行备份。

    图3 单节点备份原理图

备份方案

表1提供了常见的数据备份和下载备份文件的方法。

表1 备份方案

任务类型

备份或恢复类型

支持的实例类型

使用场景

数据备份

自动备份

集群、副本集、单节点

您可以通过控制台对DDS进行自动备份。

手动备份

集群、副本集、单节点

您可以通过控制台对DDS进行手动备份。

通过mongodump工具备份

集群、副本集、单节点

您可以通过MongoDB客户端自带的备份恢复工具对自建MongoDB或云上MongoDB数据库进行手动备份。

通过mongoexport工具备份

集群、副本集、单节点

您可以通过MongoDB客户端自带的备份恢复工具对自建MongoDB或云上MongoDB数据库进行手动备份。

下载备份文件

使用OBS Browser+下载

集群、副本集、单节点

备份文件大于400MB时,适合使用OBS Browser+下载。

使用浏览器直接下载

副本集、单节点

适合通过浏览器直接下载备份文件。

按地址下载

集群、副本集、单节点

适用于通过浏览器新窗口、迅雷或者wget等方式下载备份文件。

分享:

    相关文档

    相关产品

close