云卷云舒:【实战篇】MongoDB迁移

1. 简介

MongoDB是NoSQL数据库产品中的一种,是最像关系型数据库的非关系型数据库。

在MongoDB中,一些概念与关系型数据库是不一样的,“表”称为“集合”,“行”称为“文档”,文档也是MongoDB的最小存储单位。

对于数据量大、读写操作频繁和事务性要求不高的场合,适合使用MongoDB数据库。

2. 迁移原理

副本集(Replica Set)是一组维护相同数据集的mongodb服务,副本集可以提供冗余和高可用性,可以使数据具有多个副本,类似于有自动故障恢复功能的主从集群,是所有生产部署的基础。

 

云卷云舒:【实战篇】MongoDB迁移_第1张图片

分片(Sharding)是一种跨多台机器分布数据的方法,可以将数据拆分,将其分散在不同的机器上,MongoDB使用分片来支持具有非常大的数据集和高吞吐量操作的部署。

 

云卷云舒:【实战篇】MongoDB迁移_第2张图片

3. 迁移方案

 

云卷云舒:【实战篇】MongoDB迁移_第3张图片

从时间线图中可以分析,假设从A点开始进行备份,在时间进行到B处时,备份完毕,最后在C点处停机关闭业务。

 

云卷云舒:【实战篇】MongoDB迁移_第4张图片

这种情况先前面的全备份恢复,即操作与全量迁移一致。此外将local.oplog.rs集合也使用mongodump命令备份出来,并在目标主机上使用mongorestore加上oplogReplay参数进行恢复即可,即oplog不需要使用。

 

你可能感兴趣的:(mongodb,数据库,云计算,云原生)