elasticsearch的数据迁移须要使用的工具为elasticsearch-dump,咱们能够直接使用docker来拉取镜像mongodb
docker pull taskrabbit/elasticsearch-dumpdocker
假设咱们要导出的elasticsearch的ip以及索引的地址为http://192.168.192.197:9200/index_stores,导入的ip以及地址为http://192.168.192.190:9200/index_stores,若是http://192.168.192.190上的elasticsearch并不存在该索引,咱们须要先把索引信息引入json
docker run --rm -ti taskrabbit/elasticsearch-dump --input=http://192.168.192.197:9200/index_stores --output=http://192.168.192.190:9200/index_stores --type=mapping服务器
引入完成后再引入该索引的数据app
docker run --rm -ti taskrabbit/elasticsearch-dump --input=http://192.168.192.197:9200/index_stores --output=http://192.168.192.190:9200/index_stores --type=dataelasticsearch
此时在192.168.192.190上就能够搜索到全部的数据工具
mongodb的迁移须要分导出文件,导入文件来进行lua
首先固然是登陆mongodb,由于我这里是docker安装的,没有设置用户名,密码spa
安装方式以下(版本3.4)rest
docker pull mongo:3.4
在你的数据盘中创建一个mongo-data的文件夹,本人放在/home目录下
mkdir /home/mongo-data
启动mongodb实例
docker run --restart="always" -d --name mymo -p 27017:27017 -v /home/mongo-data:/data/db -v /etc/localtime:/etc/localtime mongo:3.4 --storageEngine wiredTiger
docker exec -it mymo mongo
查询库
> show databases;
admin 0.000GB
evaluate 0.000GB
local 0.000GB
咱们要使用的是evaluate
> use evaluate;
switched to db evaluate
> show tables;
evaluate
退出
exit
执行
docker exec -it mymo mongoexport -d evaluate -c evaluate -o ./data/db/evaluate.json
此处-d为指定的库,-c 为指定的表(mongodb里也叫集合),-o为输出的文件,此处为容器的内部路径,由于咱们在启动的时候指定了外部路径的映射-v /home/mongo-data:/data/db,此时咱们能够在/homg/mongo-data中找到evaluate.json文件,将该文件放到要导入的mongodb的服务器的/home/mongo-data文件夹下,执行
docker exec -it evaluate mongoimport -d evaluate -c evaluate --file ./data/db/evaluate.json
数据即可以迁入到咱们须要的服务器中了。