介绍

Elasticdump 是一种用于将 Elasticsearch 数据进行转移和备份的命令行工具。它可以从一个 Elasticsearch 集群导出索引数据,并将其导入到不同的 Elasticsearch 集群或版本中。同时,Elasticdump 还支持将 Elasticsearch 数据以 JSON 文件的格式进行导入和导出,方便用户进行数据备份和迁移。

准备

使用Elasticdump需要提前部署node 

mkdir /usr/local/nodejs
cd /usr/local/nodejs

这是node的官网地址 需要自定义版本的可以去这里

#上传安装包
wget https://nodejs.org/dist/v15.1.0/node-v15.1.0-linux-x64.tar.xz
tar -xvf node-v10.15.0-linux-x64.tar.xz

根据 Elasticsearch 官方文档中的建议,Elasticsearch 版本 7.9.0 的最佳 Node.js 版本是 v12.x。但是,理论上来说,Node.js 只要在12.x 以上  也应该可以在一定程度上与 Elasticsearch 版本 7.9.0 兼容

#建立文件软链接至系统命令
ln -s /usr/local/nodejs/bin/node /usr/local/bin/node
ln -s /usr/local/nodejs/bin/npm /usr/local/bin/npm

这里注意 建立软链接还是硬链接都需要使用绝对路径 

检查是否安装成功

ll /usr/local/bin
npm -v 
node -v 

 配置

通过在线下载的方式安装elasticdump

npm install elasticdump -g
#建立软链接至系统命令
ln -s /usr/local/nodejs/bin/elasticdump /usr/local/bin/elasticdump

 出现如下界面就是安装成功

 使用

官网地址

# 修改elasticdump参数
cd /csdata/node-v10.15.0-linux-x64/bin
vim elasticdump
#修改limit=1000 和 scrollTime=120m --根据实际的预估插入条数和scroll有效时间
# 从源目标导出数据---导出存放目录提前创建
elasticdump --input=http://ES的IP地址:9200/索引名 --output=导出后的json文件存放地址 --type=data
# 从本地导入到目标库中---自动创建索引
elasticdump --input=json文件地址 --output=http://ES的IP地址:9200/索引名 --type=data

更多推荐