elasticsearch 导出数据命令

一 安装nodejs:

java 复制代码
curl -sL https://rpm.nodesource.com/setup_16.x | bash -
yum install nodejs -y

二 安装elasticdump:

java 复制代码
npm install elasticdump -g

三 导出命令

java 复制代码
(1)全量导出索引数据(导出到本地文件)

# 语法:elasticdump --input <ES索引地址> --output <本地文件路径> --type <数据类型>
elasticdump \
  --input http://<ES_HOST>:<ES_PORT>/<INDEX_NAME> \
  --output ./es_<INDEX_NAME>_dump.json \
  --type data  # type支持data(数据)、mapping(映射)、settings(索引配置)
(2)导出映射(mapping)+ 数据(完整备份)

# 先导出映射
elasticdump \
  --input http://<ES_HOST>:<ES_PORT>/<INDEX_NAME> \
  --output ./es_<INDEX_NAME>_mapping.json \
  --type mapping

# 再导出数据
elasticdump \
  --input http://<ES_HOST>:<ES_PORT>/<INDEX_NAME> \
  --output ./es_<INDEX_NAME>_data.json \
  --type data
(3)增量导出(基于时间戳 / 条件过滤)

# 导出指定时间范围的数据(示例:create_time >= 2025-12-01)
elasticdump \
  --input http://<ES_HOST>:<ES_PORT>/<INDEX_NAME> \
  --output ./es_<INDEX_NAME>_incremental.json \
  --searchBody '{"query": {"range": {"create_time": {"gte": "2025-12-01 00:00:00"}}}}' \
  --type data
  	

(4)需要用户验证的导出
elasticdump \
  --input http://<USERNAME>:<PASSWORD>@<ES_HOST>:<ES_PORT>/<INDEX_NAME> \
  --output ./es_<INDEX_NAME>_dump.json \
  --type data

四 导入命令:

java 复制代码
elasticdump \
  --input ./es_user_info_dump.json \
  --output http://<USERNAME>:<PASSWORD>@<ES_HOST>:<ES_PORT>/<TARGET_INDEX> \
  --type data
相关推荐
Elasticsearch1 天前
如何通过 Claude Code 来写入 CSV 数据到 Elasticsearch
elasticsearch
得物技术2 天前
从埋点需求到规则资产:Hermes Agent 重构得物数仓工作流
大数据·llm·ai编程
久美子2 天前
AI驱动数仓建设的Harness工程实践——本体建模、知识分层与上下文工程
大数据
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
大志哥1233 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
果丁智能3 天前
物联网智能锁赋能集中式住宿:身份核验与远程权限管控的全链路技术实践
大数据·人工智能·物联网·智能家居
ApacheSeaTunnel3 天前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
weixin_397574093 天前
PDF复杂表格的1:1还原引擎:跨页表格自动拼接技术实战
大数据·人工智能·pdf
TableRow3 天前
参数化搜索的实现原理:从多维索引到查询优化
elasticsearch·全文检索
极光代码工作室3 天前
基于数据仓库的电商数据分析平台
大数据·hadoop·python·spark·数据可视化