elasticdump
需要安装elasticdump ,node插件
#!/bin/bash
indexes=("index1" "index2")
for index in "${indexes[@]}"
do
echo "backup ${index} start"
#--type: 迁移类型,默认为 data,表明只迁移数据,可选 settings, analyzer, data, mapping, alias
# elasticdump --input=http://user:pwd@:9200/$index --output=$ --type=settings --fsCompress | gzip > /opt/esDataBackUp/${index}_settings.json.gz
# elasticdump --input=http://user:pwd@ip:9200/$index --output=$ --type=alias --fsCompress | gzip > /opt/esDataBackUp/${index}_alias.json.gz
# elasticdump --input=http://user:pwd@ip:9200/$index --output=$ --type=mapping --fsCompress | gzip > /opt/esDataBackUp/${index}_mapping.json.gz
# elasticdump --input=http://user:pwd@ip:9200/$index --output=$ --limit 200 --offset 100 --type=data --fsCompress | gzip > /opt/esDataBackUp/${index}_data.json.gz
#elasticdump --input=http://user:pwd@ip:9200/$index --output=http://ip:9200/$index --type=settings
#elasticdump --input=http://user:pwd@ip:9200/$index --output=http://ip:9200/$index --type=alias
##elasticdump --input=http://user:pwd@ip:9200/$index --output=http://ip:9200/$index --type=mapping
#elasticdump --input=http://user:pwd@ip:9200/$index --output=http://ip:9200/$index --limit 300 --type=data
#elasticdump --input=http://user:pwd@ip:9200/$index --output=http://ip:9200/$index --limit 300 --offset 1000 --type=data
#elasticdump --input=http://user:pwd@ip:9200/$index --output=http://ip:9200/$index --searchBody '{"query": {"range": {"queryDate": {"gte": "2019-08-11 00:00:00"}}}}' --type=data
echo "backup ${index} end"
done
echo "all index done"
数据还原
zcat /mnt/esback/telecom_new_map.json.gz | elasticdump --input=$ --output=http://user:pwd@ip:9200/telecom_new--type=mapping
zcat /mnt/esback/telecom_new.json.gz | elasticdump --input=$ --output=http:/user:pwd@ip:9200/telecom_new--type=data
esm
GitHub - medcl/esm: An simple Elasticsearch migration tool.