elasticsearch导出、导入工具-elasticdump

elasticsearch 数据导入到本地,或本地数据导入到elasticsearch中,或集群间的数据迁移,可以用elasticsearch的工具—elasticdump

elasticdump 可以用用npm安装本地运行,也可以用docker容器运行。在这里我说一下npm安装本地运行、docker运行可以参考github文章。

npm 安装 elasticdump

先下载安装npm

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19# 以下我尽量都用绝对路径吧。 发现好多文章里的路径写的不清晰......

cd /home/shining

wget https://nodejs.org/dist/v8.11.2/node-v8.11.2-linux-x64.tar.xz

tar -xf node-v8.11.2-linux-x64.tar.xz

cd /home/shining/node-v8.11.2-linux-x64/bin

ln -s /home/shining/node-v8.11.2-linux-x64/bin/npm /usr/local/bin/npm

ln -s /home/shining/node-v8.11.2-linux-x64/bin/node /usr/local/bin/node

# 安装 elasticdump

./npm init -f

./npm install elasticdump

# 如果你需要全局安装的话就添加 -g 参数, 我这里没有配置全局。

cd /home/shining/node-v8.11.2-linux-x64/bin/node_modules/elasticdump/bin

./elasticdump --help

# 这样 elasticdump 就安装好了

导出数据, 他在他的官网中已经介绍的很详细了, es导出到es,es导出到文件,导出数据直接压缩等方式。

主要记住的是, 导出的时候不仅仅的data,还需要导出mapping信息。

导出数据到文件:1

2

3

4

5

6

7

8elasticdump \

--input=http://172.16.3.5:9200/shining_index \

--output=/data/shining_index_mapping.json \

--type=mapping

elasticdump \

--input=http://172.16.3.5:9200/shining_index \

--output=/data/shining_index.json \

--type=data

这样的话数据和mapping信息就都导出来了。

For Example:

1

2

3

4

5

6

7

8

9

10

11

12

13导出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

导出数据

elasticdump --ignore-errors=true --scrollTime=120m --bulk=true --input=http://10.10.20.164:9200/xmonitor-2015.04.28 --output=/usr/local/esdump/node-v0.12.2-linux-x64/data/xmonitor-prd-2015.04.28.json --type=data

导出数据到本地集群

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=data

迁移mapping

./elasticdump --input=http://10.214.228.44:9200/ehruserindex --output=http://10.214.226.64:9200/ehruserindex --type=mapping

迁移数据

./elasticdump --input=http://10.214.228.44:9200/ehruserindex --output=http://10.214.226.64:9200/ehruserindex --limit=10000 --type=data

导入数据

正常导入数据是:

1elasticdump --input /data/shining_index.json --output http://172.16.3.5:9200/shining_index

如果你得ES集群配置用有配置: action.auto_create_index 参数为 false 或 为 +aaa,-bbb,’+’号意味着允许创建aaa开头的索引,’-‘号意味着不允许创建bbb开头的索引 有规则的话(详细可以查看这个参数的说明和配置), 会导致导入失败。

这时候需要先创建索引和mappping之后再导入数据。

先编辑一下我们导出来的mapping.json文件

1

2

3

4

5

6

7

8

9vim /data/shining_index_mapping.json

数据类似于:

{"shining_index":{"mappings":{"logs".............}}}}}

需要保留 mappings 之后的信息

类似于:

{"mappings":{"logs".............}}}}

删除 {"shining_index": 和 最后一个 }

创建索引

1curl -X PUT 'http://172.16.3.5:9200/shining_index' -d@/data/shining_index_mapping.json

创建成功之后再导入数据就可以了。就不会报错了。

elasticdump安装_elasticsearch导出、导入工具-elasticdump相关推荐

  1. Oracle exp/imp导出导入工具的使用

    一. 导出工具 exp 1. 它是操作系统下一个可执行的文件 存放目录/ORACLE_HOME/bin exp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移       它有 ...

  2. oracle exp导出工具,Oracle EXP/IMP 导出导入工具的使用

    一. 导出工具 exp 1. 它是操作系统下一个可执行的文件 存放目录/ORACLE_HOME/bin exp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移 它有三种模式: ...

  3. oracle导出导入工具expdp/impdp

    expdp使用说明 一,前提,跟exp不同,需要使用目录  -- 创建目录  create directory dump_dir as 'c:/bak';  -- 查询目录  select * fro ...

  4. POI 导出导入工具类介绍

    介绍: Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. .NET的开发人员则可以利用NPOI (POI ...

  5. java 导出es数据_elasticseach 数据的导出与导出工具elasticdump使用

    Centos下安装elasticdump yum install elasticdump 安装完成后 [root@i-vvxxxxswtw5ne ~]# elasticdump --help elas ...

  6. elasticdump安装_elasticdump备份及恢复es数据

    1.elasticdump备份还原 1.1elasticdump 简介 用于转移和保存ES索引数据 # 获取集群的节点列表: curl 'localhost:9200/_cat/nodes?v' # ...

  7. linux中mongo的导出数据,Linux下mongodb安装及数据导入导出教程(示例代码)

    Linux下mongodb安装及数据导入导出教程 #查看linux发行版本 cat /etc/issue #查看linux内核版本号 uname -r 一.Linux下mongodb安装的一般步骤 1 ...

  8. 在pl/sql中使用exp/imp工具实现oracle数据导出/导入

    在pl/sql中使用exp/imp工具实现oracle数据导出/导入 2006年11月19日 星期日 10:59 Oracle 数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令 ...

  9. Linux下mongodb安装及数据导入导出教程

    Linux下mongodb安装及数据导入导出教程 #查看linux发行版本 cat /etc/issue #查看linux内核版本号 uname -r 一.Linux下mongodb安装的一般步骤 1 ...

最新文章

  1. [LeetCode]题解(python):150-Evaluate Reverse Polish Notation
  2. 学python好不好-为什么要学Python?老男孩Python培训怎么样?
  3. python txt文本操作
  4. .NET重构—单元测试重构
  5. 【机器学习】HOG detectMultiScale 参数分析
  6. python函数名第一类方法、f-string格式化、迭代器及递归函数
  7. 记一次对学校的渗透测试
  8. 在手机测试html,借助 IIS 管理器 -- 用手机测试HTML页面
  9. 52 -算法 -数据结构类 Leetcode26 删除有序数组中的重复项
  10. WebService的相关概念
  11. OSPFv3中LSA详解(二)——Router LSA详解
  12. keepalived做nginx的高可用,企业版简单介绍。
  13. 最好用的php编程软件_PHP语言开发软件哪个好
  14. win10商店下载位置_Windows10应用商店程序下载目录在哪 怎样查看win10系统应用商店程序下载目录...
  15. CSS文字选中样式和文字闪烁效果
  16. Python常用小技巧总结
  17. Badboy工具:简介,安装,脚本录制
  18. PTA 数据结构与算法题目集(中文) 7-49 打印学生选课清单 (25分)题解
  19. 超有用的word宏代码——批量裁剪图片
  20. 对称与非对称加密算法

热门文章

  1. Ubuntu16.04 pip3 install 报错 working_set.find(moduleOrReq) or require(str(moduleOrReq))[0]
  2. SpringBoot2.x 不反回空值属性
  3. 用python下载文件的若干种方法汇总
  4. pytorch之expand,gather,squeeze,sum,contiguous,softmax,max,argmax
  5. LeetCode简单题之杨辉三角 II
  6. 吉利蔚来造手机,小米造车
  7. LLVM编译器基础架构与DragonEgg示例
  8. TinyML设备设计的Arm内核
  9. 提高汽车系统的安全性
  10. Python:XPath与lxml类库