1.安装Elasticdump
Elasticdump需要node环境,首先安装node环境,此处为window下的安装记录
1、windows下安装
(1)新建文件夹elasticdump
(2)执行npm install
(3)执行 npm install elasticdump -g
安装完成后可以通过elasticdump --help进行验证。
2.使用Elasticdump对数据进行迁移
E:\elasticsearch-7.6.1\elasticdump>elasticdump --input=http://10.19.215.130:9200/test --output=http://localhost:9200/test
Wed, 30 Mar 2022 03:08:43 GMT | starting dump
Wed, 30 Mar 2022 03:08:43 GMT | got 2 objects from source elasticsearch (offset: 0)
Wed, 30 Mar 2022 03:08:45 GMT | sent 2 objects to destination elasticsearch, wrote 2
Wed, 30 Mar 2022 03:08:45 GMT | got 0 objects from source elasticsearch (offset: 2)
Wed, 30 Mar 2022 03:08:45 GMT | Total Writes: 2
Wed, 30 Mar 2022 03:08:45 GMT | dump complete
3.使用多命令进行选择性迁移
# 备份
elasticdump --input=http://192.168.1.2:9200/test --output=/opt/esdump/
# 支持星号匹配,以test开头的所有索引数据导出到文件
elasticdump --input=http://192.168.1.2:9200/test* --output=/opt/esdump/
# 还原
elasticdump --input=/opt/esdump/ --output=http://192.168.1.3:9200/test
# 还原,不需要指定索引自动插入
elasticdump --input=/opt/esdump/ --output=http://192.168.1.3:9200
# 迁移 加入limit限制每次更新的条数,加快更新时间
elasticdump --input=http://10.130:9200/rdms--limit=1000 --output=http:/localhost:9200/rdms
# 带账号密码的数据迁移
elasticdump --input=http://username:password@192.168.1.2:9200/test --output=http://username@password@192.168.1.3:9200/test
# 导出Mapping信息
elasticdump --ignore-errors=true --scrollTime=120m --bulk=true --input=http://10.10.20.164:9200/xmonitor-2015.04.29 --output=http://192.168.100.72:9200/xmonitor-prd-2015.04.29 --type=mapping
# 根据查询条件导出
nohup elasticdump --ignore-errors=true --scrollTime=120m --bulk=true --input=http://10.248.161.31:9200/ams_data --output=/usr/elasticsearch/output_datas_data_week0708_0714.json --type=data --searchBody '{"query":{"bool":{"must":{"range":{"created_at":{"from":"2017-07-08 00:00:00","to":"2017-07-14 23:59:59","format":"yyyy-MM-dd HH:mm:ss","include_lower":true,"include_upper":true}}}}}}' >/usr/elasticsearch/output_data/ &