使用elasticdump数据备份和迁移

github官网

工具安装

  1. npm install elasticdump -g
  2. # 不用的话可以删除
  3. npm uninstall elasticdump -g

直接数据迁移

  1. # Copy an index from production to staging with analyzer and mapping:
  2. elasticdump \
  3. --input=http://production.es.com:9200/my_index \
  4. --output=http://staging.es.com:9200/my_index \
  5. --type=analyzer
  6. elasticdump \
  7. --input=http://production.es.com:9200/my_index \
  8. --output=http://staging.es.com:9200/my_index \
  9. --type=mapping
  10. elasticdump \
  11. --input=http://production.es.com:9200/my_index \
  12. --output=http://staging.es.com:9200/my_index \
  13. --type=data \
  14. --limit=10000 # 默认是100,速度很慢

ip->文件->ip

  1. # 导出索引Mapping数据
  2. elasticdump \
  3. --input=http://es实例IP:9200/index_name/index_type \
  4. --output=/data/my_index_mapping.json \ # 存放目录
  5. --type=mapping
  6. # 导出索引数据
  7. elasticdump \
  8. --input=http://es实例IP:9200/index_name/index_type \
  9. --output=/data/my_index.json \
  10. --type=data \
  11. --limit=10000 # 默认是100,速度很慢
  12. ======================================================
  13. # Mapping 数据导入至索引
  14. elasticdump \
  15. --output=http://es实例IP:9200/index_name \
  16. --input=/home/indexdata/roll_vote_mapping.json \
  17. --type=mapping
  18. # ES文档数据导入至索引
  19. elasticdump \
  20. --output=http:///es实例IP:9200/index_name \
  21. --input=/home/indexdata/roll_vote.json \
  22. --type=data

实例:

  1. # 导出
  2. elasticdump \
  3. --input=http://elastic:123456@10.20.222.188:9200/people/man \
  4. --output=/c/Users/1/Desktop/my_index_mapping.json \
  5. --type=mapping
  6. elasticdump \
  7. --input=http://elastic:123456@10.20.222.188:9200/people/man \
  8. --output=/c/Users/1/Desktop/my_index.json \
  9. --type=data \
  10. --limit=10000
  11. # 导入
  12. elasticdump \
  13. --output=http://elastic:123456@10.20.222.188:9200/people2 \
  14. --input=/c/Users/1/Desktop/my_index_mapping.json \
  15. --type=mapping
  16. elasticdump \
  17. --output=http://elastic:123456@10.20.222.188:9200/people2 \
  18. --input=/c/Users/1/Desktop/my_index.json \
  19. --type=data \
  20. --limit=10000