elasticsearch单机版本数据迁移

文章目录

前言

在使用elasticsearch的时候,难免少不了进行数据迁移,本文介绍两种试用的数据迁移方法,es版本为7.8.1

方式1:直接拷贝

如果elasticsearch版本是一样的,只是切换服务器,可以直接迁移elasticsearch的文件。例如:

elasticsearch的文件一般为

elasticsearch-data/data/nodes/0

执行命令,在目标服务器里面执行该命令。从源服务器拷贝node到目标服务器中,其中192.168.0.99为目标服务器,当前服务器为源服务器

复制代码
scp -r es@192.168.0.99:/data/elk/elasticsearch-7.8.1/data ./

拷贝完需要重启服务器

方式2:使用elasticdump

注意,使用该命令需要安装nodejs,并且版本大于18.0.0

需先安装nodejs

打开浏览器,搜索nodejs https://nodejs.org/en,并且进行下载

目前安装的版本为:v22.22.3

shell 复制代码
# Download and install nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.5/install.sh | bash

# in lieu of restarting the shell
\. "$HOME/.nvm/nvm.sh"

# Download and install Node.js:
nvm install 22

# Verify the Node.js version:
node -v # Should print "v22.22.3".

# Verify npm version:
npm -v # Should print "10.9.8".

再安装elasticdump

shell 复制代码
npm install -g elasticdump

安装好后,执行命令,看看是否安装成功过

shell 复制代码
elasticdump --help
  • 单个索引的迁移
    本案例是将 192.168.0.99:9200 迁移到 192.168.20.197:9200,索引为jzkj_operate_log_202606
shell 复制代码
# 1. 迁移结构(mapping)
elasticsearch-dump \
--input=http://192.168.20.197:9200/jzkj_operate_log_202606 \
--output=http://192.168.0.99:9200/jzkj_operate_log_202606 \
--type=mapping \
--limit=1000 --timeout=60000

# 2. 迁移数据
elasticsearch-dump \
--input=http://192.168.20.197:9200/jzkj_operate_log_202606 \
--output=http://192.168.0.99:9200/jzkj_operate_log_202606 \
--type=data \
--limit=1000 --concurrency=5 --timeout=60000
  • 匹配索引的迁移
    本案例是将 192.168.0.99:9200 迁移到 192.168.20.197:9200,把所有jzkj_operate_log开头的索引全部备份

注意/data/es_backup存在,且有读写权限

shell 复制代码
# 第一步:dump 源 ES 到本地目录,注意/data/es_backup存在,且有读写权限
multielasticdump \
  --direction=dump \
  --input=http://192.168.0.99:9200 \
  --output=/data/es_backup \
  --match='^jzkj_operate_log.*' \
  --limit=1000 \
  --concurrency=5 \
  --timeout=60000
# 第二步:load 本地目录到目标 ES
multielasticdump \
  --direction=load \
  --input=/data/es_backup \
  --output=http://192.168.20.197:9200 \
  --match='^jzkj_operate_log.*' \
  --limit=1000 \
  --concurrency=5 \
  --timeout=60000
相关推荐
吃饱了得干活1 小时前
用 PageHelper 同步数据到 ES:能跑,但这几个坑得先知道
后端·elasticsearch
Geeys1 小时前
拼多多单品推广完整方案(可直接落地)
大数据·人工智能
生态学者2 小时前
Global Change Biology | 森林越“步调一致”,反而越怕干旱?树木生长与叶片活动的同步之谜
大数据·人工智能·算法·r语言·微信公众平台
吃饱了得干活2 小时前
从 LIKE 查询到毫秒级搜索:Elasticsearch 核心原理与 Java 实战
后端·elasticsearch
lsswear2 小时前
Agent 框架新手入门与实战部署指南
大数据·人工智能·算法
samFuB2 小时前
【数据集】地级市一般性转移支付、专项转移支付数据(2010-2024年)
大数据
Flynt2 小时前
我把真实的 ES 查询怼到 7059 星的 Rust 搜索引擎上:1366/1369 的兼容承诺,裂了 3 个缝
elasticsearch·搜索引擎·rust
YH行业报告分析3 小时前
2026漂白紫胶粉市场深度:EUDR合规与脱蜡路线之争如何重构天然树脂供应链?
大数据·重构
YH_Analytics3 小时前
2026-2032 食品吸液垫行业市场规模与增长预测
大数据·网络·人工智能