Mongodb同步数据到Elasticsearch(mongo-connector)

本文介绍如何使用mongo-connector工具实现实时从MongoDB到Elasticsearch的数据同步,包括环境配置、安装步骤、启动同步服务及验证过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述:

  • mongo-connector工具在MongoDB与目标系统间同步数据,并跟踪MongoDB的oplog,保持操作与MongoDB的实时同步。
  • mongo-connector工具是基于python开发的实时同步服务工具。它要求mongo运行在replica-set模式,且需要 elastic2_doc_manager将数据写入ES。

         

环境:

1、安装mongo-connector

pip install --user mongo-connector[elastic5]

2、安装elastic2-doc-manager

pip install --user elastic2-doc-manager[elastic5]

3、开启同步

# 进入mongo-connector目录 安装elastic2-doc-manager时会打印出来如:
The script mongo-connector is installed in '/Users/chenfenli/Library/Python/2.7/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.


#进入mongo-connector
cd /Users/chenfenli/Library/Python/2.7/bin

# 同步
./mongo-connector -m 127.0.0.1:27017 -t 127.0.0.1:9200 -d elastic2_doc_manager &
  • -m: mongodb的地址与端口,端口默认为27017。
  • -t:ES的地址与端口,端口默认为9200。
  • -d:doc manager的名称,2.x版本为: elastic2-doc-manager。
  • -n:text.XXX 表示同步text库中的XXX表 默认表示同步全部库的全部表。
  • -i:filed_name 待同步的字段,默认同步所有字段。

4、验证

# 对应ES中的index
rscopys:PRIMARY> use mongo_es_test

# 插入数据(users对应ES中的type)
db.users.insert({id:"1",name:"xiaozheng"})

 

5、重新同步

  1. 停止mongo_connector
  2. 删除oplog.timestamp
  3. 重启mongo_connector
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值