Elasticsearch7.x索引index的备份和恢复,index索引误删恢复
Elasticsearch不仅提供了索引副本分片功能,还支持索引备份,尤其适合index索引误删或者数据丢失情况的恢复。
具体实现方式是,创建索引备份仓库→备份索引快照到仓库→查询索引备份仓库中快照列表→从备份快照中恢复索引。
三个概念:仓库(repository)、快照(snapshot)、索引(index)
为了方便理解,仓库可以理解为数据库实例,快照理解为数据库database,索引理解为表table。因此可以创建多个仓库,仓库中可以创建多个快照,快照中可以储存多个索引。不过通常只需要创建一个仓库,仓库中定时创建快照,快照储存多个索引数据即可。
如果是从云服务器厂商购买的ES服务,如:阿里云,云厂商已经实现了备份仓库功能,跳过一、二直接看下面第三部分;但如果是自己搭建的Elasticsearch,只有备份过快照仓库才能恢复数据,否则只能面对现实了。
下面从Restful请求方式和kibana可视化两种形式介绍备份的搭建:
一、创建备份仓库
首先在创建仓库前,确保elasticsearch.xml配置文件中指定一个仓库地址:
# 备份仓库位置
path.repo: /data/elasticsearch_data/es_backup
创建仓库,参数信息:
|
快照的位置。必选 |
|
打开快照文件的压缩。压缩仅应用于元数据文件(索引映射和设置)。数据文件未压缩。默认为 |
|
如果需要,可以在快照过程中将大文件分解为多个块。指定块尺寸的值,并且单元,例如: |
|
每个节点的节流恢复速率。默认为 |
|
每个节点的快照速率限制。默认为 |
|
使存储库为只读。默认为 |
以下我的参数具体为:仓库名称(backup_01)、仓库类型(fs)、仓库路径地址(/data/elasticsearch_data/es_backup)、备份速度(50mb)、恢复时的速度(50ms)
PUT _snapshot/backup_01?verify=false&pretty
{"type":"fs","settings":{"location":"/data/elasticsearch_data/es_backup","max_snapshot_bytes_per_sec":"50mb","max_restore_bytes_per_sec":"50mb"}
}
二、创建快照,备份索引
一个仓库可以包含多个快照,快照可以存多个索引、部分索引或者一个单独的索引,还可以给索引指定一个唯一的名字作为备份名。
1.将所有索引备份到快照snapshot_01中,并存储到仓库backup_01下。
PUT _snapshot/backup_01/snapshot_01
2.将指定索引index_1,index_2备份到快照snapshot_01中,并存储到仓库backup_01下。
PUT _snapshot/backup_01/snapshot_01
{"indices": "index_1,index_2"
}
3.查看仓库backup_01中所有快照
GET _snapshot/backup_01
4.查看快照snapshot_01中所有备份的索引
GET _snapshot/backup_01/snapshot_01
三、恢复数据
根据上面查到快照,确定需要恢复的索引信息后,还原恢复指定索引
1.恢复快照中所有索引
POST _snapshot/backup_01/snapshot_01/_restore
2.恢复快照中指定索引
POST _snapshot/backup_01/snapshot_01/_restore
{
"indices": "index_1"
}
另外可以在命令后面添加?wait_for_completion=true阻塞命令直到恢复完成再返回信息,恢复任务会在后台自动执行下去。
POST _snapshot/backup_01/snapshot_01/_restore?wait_for_completion=true
{
"indices": "index_1"
}
——————————————————————————————
可视化kibana操作上述流程
1.创建仓库
2.创建快照
3.创建快照策略,定时备份数据
Elasticsearch7.x索引index的备份和恢复,index索引误删恢复相关推荐
- Linux文件系统恢复(数据误删恢复)
Linux文件系统恢复(数据误删恢复) 文章目录 Linux文件系统恢复(数据误删恢复) inode与block 用户通过文件名打开文件时,系统内部的过程 查看文件对应的inode号码有两种方式 用s ...
- linux系统文件保存后恢复,linux系统文件误删恢复
代码被删了,好几天的心血,所以想尝试恢复一下数据.试了几个工具,最后总结一下. 先用 extundelete 用 df -T查看分区信息,挂载在/dev/sdb1上,ext4格式,觉得有希望, ima ...
- linux压缩文件恢复,Linux文件误删恢复
实验要求: 对新建磁盘sdb1中删除的文件进行恢复 实验步骤: 一.安装环境包 rpm -ivh /mnt/Packages/e2fsprogs-libs-1.41.12-18.el6.x86_64. ...
- 2020-08-02 Mysql数据库索引初识、备份、设计原则、JDBC连接、SQL注入、PreparedStatement对象使用、事务处理、连接池
------------------------索引---------------------- 定义:帮助MYSQL高效获取数据的数据结构 ----------主键索引----------prima ...
- mongo备份索引_【MongoDB学习之四】索引 聚合 备份与恢复 监控
环境 MongoDB 4.0 CentOS 6.5_x64 一.索引 语法 ensureIndex()方法基本语法格式如下所示: >db.COLLECTION_NAME.ensureIndex( ...
- Elasticsearch7.15.2 mysql8.0.26 logstash-input-jdbc 数据增量索引构建
文章目录 一.基础软件安装 1. 安装mysql 2. Elasticsearch7.15.2 安装部署 3. kibana 安装部署 4. logstash-input-jdbc 安装部署 二.数据 ...
- mysql 增量备份_MySQL增量备份与恢复(增量备份概述、特点,断点恢复实操)
一. MySQL 增量备份与恢复 使用 mysqldump 进行完全备份,备份的数据中有重复数据,备份时间与恢复时间过长.而增量备份就是自上一次备份之后增加或改变的内容. 1.1 增量备份的特点 增量 ...
- kibana快照存储库实现定时备份elasticsearch集群索引
利用kibana的快照存储库备份es索引 文章目录 利用kibana的快照存储库备份es索引 1.快照存储库备份es索引 2.部署nfs存储并在es节点进行挂载 2.1.部署nfs存储 2.2.配置e ...
- 物理拷贝备份mysql到其他机器上恢复
物理拷贝备份mysql到其他机器上恢复 经常会遇到mysql数据要迁徙的情况 ,逻辑导出是可以的 但是就是太慢 第三方工具也同样可以用 也是操作麻烦,最简单粗暴的方式就是直接拷贝物理文件来的最快 也很 ...
最新文章
- csharp为何不流行_【经营】做餐饮,算好加减法,你不赚谁赚
- List、Array与ArrayList
- emlogPHP媒体范网站主题模版 美化版v6.3.1
- 可视化 —— 二维平面上的散列点在坐标轴方向上的移动
- macOS安装过程中“应用副本已损坏”的解决方案
- ubuntu 常用配置
- freemarker 自己常用方法
- 实现微信小程序版本管理
- 开启计算机远程桌面连接不上,解决win7系统远程桌面连接已开启却无法连接的方法有哪些...
- oracle建索引时报ora00955 名称已由现有对象使用,关于处理ORA-00955: 名称已被现有对象占用的错误...
- CryEngine技术讲解
- 携程产品经理笔试题-2020秋招
- Relax与CMMI Level 4 KPA的对应关系
- python的基本语法、数据类型、运算符及基本操作_Python教程基础语法、变量基本使用和算术运算符...
- iOS 版本分布统计
- 如何打开ESRI ArcGIS的LPK文件(layer package)
- SOA(面向服务架构)是什么?
- Unity 点击、双击、连击、长按 事件检测(支持PC和移动端)
- 用mysql设计一个KTV点歌系统_java swing mysql实现的ktv点歌系统项目源码附带视频教程...
- 找不到localhost的网页错误怎么办?