如何使用elasticdump进行elasticsearch数据还原

使用elasticsearch进行开发,生产环境不能改动,可能需要将数据从生产环境复制到测试环境。

elasticdump是实现这一功能的理想工具,可通过简单几行命令,即完成数据的复制迁移。

这里尝试基于docker版本的elasticsearch,验证elasticdump迁移复制数据的功能。

1 安装elasticdump

这里假设使用conda环境,先安装npm工具nodejs,然后安装elasticdump

conda install conda-forge::nodejs

npm install -g elasticdump

2 测试elasticdump

2.1 elasticsearch创建

采用docker创建elasticsearch,版本为8.11.3,启动命令如下所示。

为简化操作关闭安全验证,具体为xpack.security.enabled=false 。

这种操作通常应用于内部系统或开发测试环境。

docker run --name es01 -p 9200:9200 -p 8300:9300 \

-e "discovery.type=single-node" \

-e ES_JAVA_OPTS="-Xms1G -Xmx1G" \

-e xpack.security.enabled=false \

-d docker.elastic.co/elasticsearch/elasticsearch:8.11.3

es启动完成后,可通过以下命令直接验证。

curl http://localhost:9200/

2.2 创建索引

创建index,名称为index_name

curl -XPUT "https://localhost:9200/index_name"

2.3 导出数据

从现有源es dump索引数据,包括mapping数据和data数据。

假设现有es未设置ca证书、用户名、密码。

elasticdump \

--input='http://es_host:es_port/index_name' \

--output=/path/to/index_mapping.json \

--type=mapping

elasticdump \

--input='http://es_host:es_port/index_name \

--output= /path/to/index_data.json \

--type=data

2.4 导入数据

将之前导出的源es索引数据,导入本地创建的es。

命令如下

lasticdump \

--input=/path/to/index_mapping.json \

--output=http://localhost:9200/index_name \

--type=mapping

elasticdump \

--input=/path/to/index_data.json \

--output=http://localhost:9200/index_name \

--type=data

输出示例如下

Tue, 04 Nov 2025 10:09:00 GMT | starting dump

Tue, 04 Nov 2025 10:09:00 GMT | got 100 objects from source file (offset: 0)

Tue, 04 Nov 2025 10:09:00 GMT | got 100 objects from source file (offset: 100)

......

Tue, 04 Nov 2025 10:09:03 GMT | Total Writes: xxxx

Tue, 04 Nov 2025 10:09:03 GMT | dump complete

reference


elasticsearch-dump

https://github.com/elasticsearch-dump/elasticsearch-dump

【ElasticSearch】elasticdump 导入/导出数据及常见报错

https://blog.csdn.net/zzddada/article/details/121744016

Mac本地docker安装Kibana+ElasticSearch

https://blog.csdn.net/liliang199/article/details/151581138

python访问基于docker搭建的elasticsearch

https://blog.csdn.net/liliang199/article/details/151586083

Elasticsearch备份与还原:使用elasticdump

https://cloud.tencent.com/developer/article/2360111

Elasticsearch8关闭安全认证功能

https://juejin.cn/post/7203637198120878137

相关推荐
智能化咨询几秒前
(200页PPT)DG1005企业IT战略规划架构设计方案(附下载方式)
大数据·人工智能
飞鸟恋上鱼1 分钟前
基于Spark的短视频推荐系统设计与实现
大数据·分布式·spark
juniperhan3 分钟前
Flink 系列第13篇:Flink 生产环境中的并行度与资源配置
java·大数据·数据仓库·分布式·flink
AllData公司负责人4 分钟前
AllData数据中台通过开源项目AirFlow建设离线开发IDE,打造大数据离线调度引擎
大数据·python·资源管理·数据中台·airflow·离线调度·离线开发
Francek Chen4 分钟前
【IoTDB】工业物联网时序数据库优选:Apache IoTDB的显著优势
大数据·数据库·物联网·时序数据库·iotdb
智能化咨询4 分钟前
(194页PPT)西门子PLM产品协同研发平台建设规划方案(附下载方式)
大数据
源码之家5 分钟前
计算机毕业设计:Python电商农产品销售数据分析可视化系统 Flask框架 数据分析 可视化 机器学习 数据挖掘 大数据 大模型(建议收藏)✅
大数据·python·机器学习·数据挖掘·数据分析·flask·课程设计
常利兵6 分钟前
告别臃肿!Elasticsearch平替Manticore登场
大数据·elasticsearch·jenkins
刘佬GEO8 分钟前
GEO 效果看什么指标:从提及、引用到推荐的判断框架
前端·网络·人工智能·搜索引擎·ai
Elastic 中国社区官方博客2 小时前
Prometheus Remote Write 在 Elasticsearch 中的摄取原理
大数据·数据库·elasticsearch·搜索引擎·信息可视化·全文检索·prometheus