1.拉去dump鏡像
[root@localhost ~]# docker pull taskrabbit/elasticsearch-dump
2.相關實例
1.創建文件存放路徑
[root@localhost ~]# mkdir -p /data/
2.將索引數據備份到文件
[root@localhost ~]# docker run --rm -ti -v /data/:/tmp taskrabbit/elasticsearch-dump --input=http://192.168.1.2:9200/my_index --output=/tmp/dump.json --type=data
3.將舊環境數據導入到新環境
[root@localhost ~]# docker run --rm -ti elasticsearch-dump --input=http://192.168.1.2:9200/my_index --output=http://192.168.1.2:9200/my_index --type=data
3.將文件導入到es數據庫中
[root@localhost ~]# docker run --rm -ti -v /data:/tmp taskrabbit/elasticsearch-dump --input=/tmp/dump.json --output=http://192.168.1.2:9200/my_index --type=data
官方文檔:https://github.com/taskrabbit/elasticsearch-dump?utm_source=dbweekly&utm_medium=email
上面寫的只是導入導出es的數據的,如果要把es的索引結構和mapping還有數據導出可以用下面方式:
導出es的mapping
docker run --rm -ti -v /root/es_dump_data/:/tmp taskrabbit/elasticsearch-dump --input=http://15.31.213.92:9200/dw_task_progress_index --output=/tmp/dw_task_progress_index_mapping.json --type=mapping
導出analyzer(沒有分詞就不需要)
docker run --rm -ti -v /root/es_dump_data/:/tmp taskrabbit/elasticsearch-dump --input=http://15.31.213.92:9200/dw_task_progress_index --output=/tmp/dw_task_progress_index_analyzer.json --type=analyzer
導出es數據
docker run --rm -ti -v /root/es_dump_data/:/tmp taskrabbit/elasticsearch-dump --input=http://15.31.213.92:9200/dw_task_progress_index --output=/tmp/dw_task_progress_index.json --type=data
刪除索引
curl -XDELETE http://15.31.213.44:9200/dw_task_progress_index
創建索引
curl -XPUT http://15.31.213.44:9200/dw_task_progress_index -d '
{
"settings": {
"index": {
"number_of_shards": "3",
"number_of_replicas": "1"
}
}
}
'
導入mapping
docker run --rm -ti -v /root/es_dump_data:/tmp taskrabbit/elasticsearch-dump --input=/tmp/dw_task_progress_index_mapping.json --output=http://15.31.213.44:9200/ --type=mapping
導入analyzer(沒有分詞就不需要)
docker run --rm -ti -v /root/es_dump_data:/tmp taskrabbit/elasticsearch-dump --input=/tmp/dw_task_progress_index_analyzer.json --output=http://15.31.213.44:9200/ --type=analyzer
導入data
docker run --rm -ti -v /root/es_dump_data:/tmp taskrabbit/elasticsearch-dump --input=/tmp/dw_task_progress_index.json --output=http://15.31.213.44:9200/ --type=data