Elasticdump安装及使用

Elasticdump安装

#下载安装包
cd /u-data
wget https://nodejs.org/dist/v10.13.0/node-v10.13.0-linux-x64.tar.xz
tar xf node-v10.13.0-linux-x64.tar.xz

#建立文件软连接到系统命令
ln -s /u-data/node-v10.13.0-linux-x64/bin/node /usr/bin/node
ln -s /u-data/node-v10.13.0-linux-x64/bin/npm /usr/bin/npm

#检查是否安装成功
node -v
npm -v

有网络的安装方式

#安装
npm install elasticdump -g

#建立文件软连接到系统命令
ln -s /u-data/node-v10.13.0-linux-x64/lib/node_modules/elasticdump/bin/elasticdump /usr/bin/elasticdump

# 验证
elasticdump --help

无网络的安装方式

# 查看缓存目录位置
[root@localhost ~]# npm config get cache
/root/.npm
[root@localhost ~]# cd ~
# 压缩缓存,并拷贝到待安装机器
tar -zcvf npm-cache.tar .npm

随后将node-v10.13.0-linux-x64.tar.xz与npm-cache.tar上传到没联网的机器上
将node-v10.13.0-linux-x64.tar.xz上传到/u-data
将npm-cache.tar上传到/root
cd /u-data
tar xf node-v10.13.0-linux-x64.tar.xz
ln -s /u-data/node-v10.13.0-linux-x64/bin/node /usr/bin/node
ln -s /u-data/node-v10.13.0-linux-x64/bin/npm /usr/bin/npm

cd ~
tar -zxf npm-cache.tar
cd /u-data/node-v10.13.0-linux-x64/lib     一定要进入这个目录
npm install --cache /root/.npm --optional --cache-min 99999999999 --shrinkwrap false elasticdump
ln -s /u-data/node-v10.13.0-linux-x64/lib/node_modules/elasticdump/bin/elasticdump /usr/bin/elasticdump
# 验证
elasticdump --help

Elasticdump使用

#备份索引名为test的为test.json文件
elasticdump --input=http://192.168.1.2:9200/test --output=/opt/esdump/test.json
#还原
elasticdump --input=/opt/esdump/test.json --output=http://192.168.1.3:9200/test
#迁移
elasticdump --input=http://192.168.1.2:9200/test --output=http:/192.168.1.3:9200/test

#带账号密码的数据迁移
elasticdump --input=http://username:password@192.168.1.2:9200/test --output=http://username@password@192.168.1.3:9200/test
#导出索引Mapping数据
./bin/elasticdump \
  --input=http://es实例IP:9200/index_name/index_type \
  --output=/data/my_index_mapping.json \    # 存放目录
  --type=mapping 
#导出索引数据
./bin/elasticdump \
  --input=http://es实例IP:9200/index_name/index_type \
  --output=/data/my_index.json \
  --type=data
  
# Mapping数据导入至索引
./bin/elasticdump \
  --output=http://es实例IP:9200/index_name \
  --input=/home/indexdata/roll_vote_mapping.json \ # 导入数据目录
  --type=mapping
#ES文档数据导入至索引
./bin/elasticdump \
  --output=http:///es实例IP:9200/index_name \
  --input=/home/indexdata/roll_vote.json \ 
  --type=data

配置脚本使用

[root@win-0003 ~]# vim esdump.sh 
#!/bin/bash
A=`date +%Y%m%d`
echo $A
elasticdump --input=http://193.168.57.13:9201/tbl_task_instance_detail_info_1 --output=/data/mysql_data/es/esdump/tbl_task_instance_detail_info_1_$A.json 
elasticdump --input=http://193.168.57.13:9201/grid_position --output=/data/mysql_data/es/esdump/grid_position_$A.json 
elasticdump --input=http://193.168.57.13:9201/volunteer_team --output=/data/mysql_data/es/esdump/volunteer_team_$A.json 
elasticdump --input=http://193.168.57.13:9201/volunteer_activity --output=/data/mysql_data/es/esdump/volunteer_activity_$A.json 
elasticdump --input=http://193.168.57.13:9201/yuhua-annex-data --output=/data/mysql_data/es/esdump/yuhua-annex-data_$A.json 
elasticdump --input=http://193.168.57.13:9201/yuhua-history-data --output=/data/mysql_data/es/esdump/yuhua-history-data_$A.json 
elasticdump --input=http://193.168.57.13:9201/hosting_main_order_info --output=/data/mysql_data/es/esdump/hosting_main_order_info_$A.json 
elasticdump --input=http://193.168.57.13:9201/quadtalent_ecommerce_service_item_info_1637246137969_20211118223537969 --output=/data/mysql_data/es/esdump/quadtalent_ecommerce_$A.json 

删除目录下3天前的json结尾的文件
find /data/mysql_data/es/esdump -maxdepth 1 -name "*.json" -type f -mtime +2 -exec rm -rf {} \;
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值