1. 安装elasticdump (预计20分钟 )

mkdir /data/nodejs

cd  /data/nodejs

wget https://nodejs.org/dist/v10.16.2/node-v10.16.2-linux-x64.tar.xz

tar xvf node-v10.16.2-linux-x64.tar.xz -C /usr/local/

echo 'export PATH=/usr/local/node-v10.16.2-linux-x64/bin:$GOPATH/bin:$PATH' >> /etc/profile
npm install elasticdump -g

2.获取所有的索引 (10分钟)

curl -u elastic:'ES&ceshi720'  172.30.0.17:9200/_cat/indices >/tmp/indecies.txt

cat  /tmp/indecies.txt |awk '{print $3}'  >/tmp/all_indeciex.txt

3备份 (20G数据预计3个小时)

执行备份脚本/tmp/backup_es.sh备份

cat  /tmp/backup_es.sh

#!/bin/bash
mkdir -p /mnt//
for indecies in `cat /tmp/all_indeciex.txt`
do
/usr/local/node-v10.16.2-linux-x64/bin/elasticdump --httpAuthFile=/tmp/a.txt --input=http://172.30.0.17:9200/$indecies --output=/mnt/030901/${indecies}data.json --type=data
/usr/local/node-v10.16.2-linux-x64/bin/elasticdump --httpAuthFile=/tmp/a.txt --input=http://172.30.0.17:9200/$indecies --output=/mnt/030901/${indecies}mapping.json --type=mapping
/usr/local/node-v10.16.2-linux-x64/bin/elasticdump --httpAuthFile=/tmp/a.txt --input=http://172.30.0.17:9200/$indecies --output=/mnt/030901/${indecies}settings.json --type=settings
/usr/local/node-v10.16.2-linux-x64/bin/elasticdump --httpAuthFile=/tmp/a.txt --input=http://172.30.0.17:9200/$indecies --output=/mnt/030901/${indecies}analyzer.json --type=analyzer
done

4.恢复 (预计2个小时)

执行恢复脚本/tmp/restore_es.sh恢复

cat /tmp/restore_es.sh

#!/bin/bash
for indecies in `cat /tmp/all_indeciex.txt`
do
elasticdump --input=/mnt//${indecies}settings.json --output=http://10.0.0.7:9200/$indecies --type=settings
elasticdump --input=/mnt//${indecies}mapping.json --output=http://10.0.0.7:9200/$indecies --type=mapping
#elasticdump --input=/mnt//${indecies}analyzer.json --output=http://10.0.0.7:9200/$indecies --type=analyzer
elasticdump --input=/mnt//${indecies}data.json --output=http://10.0.0.7:9200/$indecies --type=data
done

elasticsearch备份脚本的更多相关文章

  1. 分享一个MySQL分库分表备份脚本(原)

    分享一个MySQL分库备份脚本(原) 开发思路: 1.路径:规定备份到什么位置,把路径(先判断是否存在,不存在创建一个目录)先定义好,我的路径:/mysql/backup,每个备份用压缩提升效率,带上 ...

  2. 修改sys密码与nbu备份脚本密码后,nbu备份报密码无效

    公司要求口令强化,在修改sys密码后nbu的.sh脚本connect备份归档的sys/passwd也随之修改修改后每个业务备份均失败, 每次备份到归档那里就结束报密码无效,疑惑备份脚本密码也同步修改了 ...

  3. Python数据库备份脚本

    Python数据库备份脚本 #!/usr/bin/env python # author: liudong # -*- coding: utf-8 -*- # filename: db_bak.py ...

  4. 一个简单的RMAN自动备份脚本

    rman备份脚本: #!/bin/bashsource /home/oracle/.bash_profile rman target / << EOFrun {allocate chann ...

  5. Windows环境下Oracle数据库的自动备份脚本

    批处理文件(.bat) @echo off echo ================================================ echo  Windows环境下Oracle数据 ...

  6. Oracle自动备份脚本(网上找到的资料)

    废话不多说了,直接给大家贴代码了,具体代码如下所示: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 ...

  7. LINUX 自动备份脚本文件

    首先我在/root/backup 目录下建立一个文件夹, #mkdir /root/backup/mysqlbackup 以后在每天五点钟,就会有一个文件保存在这里. 接着新建文件 #vim /roo ...

  8. Windows的Subversion备份脚本

    2015-12-08更新:备份时添加--revision head 只备份最新的版本,已从脚本中移除. 2013-12-09更新:forfiles命令添加错误输出日志. 2013-12-04更新:添加 ...

  9. centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobackupex/Xtrabackup 第四十节课

    centos   shell编程6一些工作中实践脚本   nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志  直接送给bc做计算  gzip  innobacku ...

随机推荐

  1. Appium自动化测试教程-自学网-adb命令

    adb命令: adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信.它可为各种设备操作提供便利,如安装和调试应用. T ...

  2. js中错误处理机制

    1.基本知识 1. 错误对象 Error,SyntaxError,RangeError, ReferenceError,TypeError,URIError 上面的都是构造函数: new 命令可以生成 ...

  3. Oracle 后台进程(三)LGWR进程

    一.LGWR进程简介 LGWR,是Log Writer的缩写,也是一种后台进程.主要负责将日志缓冲内容写到磁盘的在线重做日志文件或组中.DBWn将dirty块写到磁盘之前,所有与buffer修改相关的 ...

  4. 安装包设计-------打包(MFC)---------知识总结

    目录: 1.选择文件夹 2.判断文件夹或文件是否存在 3.通过cmd命令行向程序中传递参数. 4.路径处理 5.文件夹以及文件的删除 6.复制文件 7.创建目录 8.从当前的应用程序中抽取资源 9.引 ...

  5. 全局变量异步I/O

    /*** sync_process.c ***/ #include <stdio.h> #include <signal.h> #include <unistd.h> ...

  6. nginx初步学习

    今天想学习了解下nginx,找找视频,感觉不适合新手,然后来看阮一峰老师的博客 nginx容器教程:http://www.ruanyifeng.com/blog/2018/02/nginx-docke ...

  7. 如何在vue中使用svg

    1.安装依赖 npm install svg-sprite-loader --save-dev 2.在config文件中配置    const path = require('path'); func ...

  8. vue中mixin的理解与用法

    vue中提供了一种混合机制--mixins,用来更高效的实现组件内容的复用.最开始我一度认为这个和组件好像没啥区别..后来发现错了.下面我们来看看mixins和普通情况下引入组件有什么区别? 组件在引 ...

  9. 1937:【06NOIP普及组】数列

    woc 太捞了简直捞的一匹 我居然会写博客 反正呀没有人看 随便写写喽

  10. java安全学习-环境准备/基础知识

    补java的坑,开始! 1.Intellij一些快捷键 intell常用快捷键: ctrl+n 快速查找定位类的位置 ctrl+q 快速查看某个类的文档信息 shift + F6 快速类.变量重命名 ...