使用mongosync同步数据

注意: 我下面的这个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窗口。

你可能感兴趣的:(使用mongosync同步数据)