使用mongosync同步数据

本文介绍了如何使用mongosync工具同步MongoDB数据,适用于3.2.16版本。首先需要通过yum安装依赖,然后从GitHub克隆项目并编译。mongosync的运行参数包括源端和目标端的IP、端口、用户、密码、认证库等,支持同步特定数据库、集合以及oplog。详细参数和使用示例可在项目wiki中查看。

注意: 我下面的这个mongodb版本较低(3.2.16), 还可以用这个工具来同步数据。工具不支持更高版本的mongodb了.

使用方法:

https://github.com/Qihoo360/mongosync

需要先yum安装这几个依赖包,否则下面的make编译会失败

yum -y install gcc gcc-c++
yum -y install boost-devel boost openssl-devel

git clone https://github.com/Qihoo360/mongosync.git

cd mongosync

make
编译完成后,会生成一个output的目录,里面放的就是编译完成的文件还有一个配置文件。

说明如果编译报错的话,日志路径在: mongosync/dep/mongo-cxx-driver/build/scons/config.log

cd output/

程序可以通过命令行及配置文件的方式运行,参数说明如下:

-c conf.file 使用conf.file配置文件启动mongosync
–src_srv arg 源端ip及端口信息,格式:–src_srv 192.168.1.1:27017
–src_user arg 源端用户
–src_passwd arg 源端密码
–src_auth_db arg 源端认证库
–src_use_mcr 强制源端使用MONGODB-CR密码认证
–dst_srv arg 目的端ip及端口信息,格式:–src_srv 192.168.1.2:27018
–dst_user arg 目的端用户,需要具有创建数据库,集合,索引等操作权限
–dst_passwd arg 目的端密码
–dst_auth_db arg 目的端认证库
–dst_use_mcr 强制目的端使用MONGODB-CR密码认证
–db arg 源端数据库,默认同步除admin及local外的所有数据库
–dst_db arg 目的端数据库
–coll arg 源端集合,默认同步全部集合
–dst_coll arg 目的端集合
–oplog 是否同步oplog
–raw_oplog 是否只同步oplog
–op_start arg oplog同步的开始点位,格式:–op_start 1479436001,1
–op_end arg oplog同步的结束点位,格式:–op_start 1479436002,2
–dst_op_ns arg oplog同步时目的端的oplog名称,格式:–dst_op_ns sync.oplog
–no_index 是否同步索引
–filter arg 同步过滤语句,格式:–filter {“name”:xxx}
–bg_num arg 数据同步线程数
–batch_size arg 数据传输块的大小(0-16M,默认是16M)

./mongosync --src_srv 192.168.2.2:27017 --src_user admin --src_passwd 123456 --src_auth_db admin --src_use_mcr --dst_srv 192.168.2.4:27017 --dst_user root --dst_passwd 123456 --dst_auth_db admin --db db1 --dst_db db1 --bg_num 4

更全的使用方法在这里:https://github.com/Qihoo360/mongosync/wiki/使用样例

如果要在后台运行,可以开个screen窗口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值