MongoDB远程主从部署下的全量数据同步及故障恢复策略

MongoDB远程环境下的主从部署由于网络条件限制,在进行大量数据的全量同步时其自身的同步机制往往很难满足需求,并经常会导致主从关系的破裂。基于以上原因,下面推荐两种全量数据同步及故障恢复策略:

单个数据库的全量同步(无需重启服务)

  1. 进入MongoDB主服务安装目录下的bin目录

MongoDB远程主从部署下的全量数据同步及故障恢复策略_第1张图片

二、执行mongodump命令备份数据库

./mongodump -d db_name -o export_path

其中-d参数指定需要备份的数据库,-o参数指定输出目录

MongoDB远程主从部署下的全量数据同步及故障恢复策略_第2张图片

上图是将epg库备份到/data/temp/下以数据库名命名的目录下

MongoDB远程主从部署下的全量数据同步及故障恢复策略_第3张图片


三、将该目录打包拷贝到从服务上

四、在从服务的MongoDB bin目录下使用mongorestore命令进行数据恢复

cd %MONGO_HOME%/bin/

./mongorestore –d db_name --drop restore_file_path

其中-d参数指定需要恢复的数据库,--drop参数指定在恢复前删除旧数据,restore_file_path为恢复文件位置

全部数据库的故障恢复(需要重启从服务)

  1. 停止从服务

  2. 删除从服务dbpathlocal.*

MongoDB远程主从部署下的全量数据同步及故障恢复策略_第4张图片

MongoDB远程主从部署下的全量数据同步及故障恢复策略_第5张图片

三、进入MongoDB主服务的dbpath,将其中local.*文件拷贝到从服务的dbpath

四、在从库启动参数中增加--fastsync参数并启动从服务


你可能感兴趣的:(MongoDB远程主从部署下的全量数据同步及故障恢复策略)