0
点赞
收藏
分享

微信扫一扫

大数据时序数据库InfluxDB之备份和恢复策略


influxdb 备份与恢复

参考: influxdb backup and restore

环境:

  • influxdb v1.6.0
  • 使用influx自动的控制台进行

I. 备份

备份命令

大数据时序数据库InfluxDB之备份和恢复策略_数据

1. 实例演示

首先创建一个数据库 yhhblog, 里面包含两个measurement,对应的数据如下

大数据时序数据库InfluxDB之备份和恢复策略_数据库_02

a. 备份所有的数据库

将influxdb中的所有的数据库都备份下来,不加任何的参数

大数据时序数据库InfluxDB之备份和恢复策略_数据库_03

b. 备份指定数据库

如果只想要备份上面的yhhblog数据库, 添加 ​​-database​​ 参数指定即可

大数据时序数据库InfluxDB之备份和恢复策略_数据_04

c. 备份数据库中指定时间段的数据

对上面的数据,只备份部分时间满足要求的数据,可以添加start/end参数

大数据时序数据库InfluxDB之备份和恢复策略_备份恢复_05

现在备份ok了,问题就是如何确认备份的问题有没有问题呢,备份后的数据如何恢复呢?

II. 恢复

命令如下

大数据时序数据库InfluxDB之备份和恢复策略_备份恢复_06

首先拿简单的方式来演示恢复策略,并查看下上面的备份数据是否有问题

1. 恢复到不存在的database

下面演示下将前面的导出的备份,恢复到一个新的数据库 yhhblog_bk上,执行命令如下

大数据时序数据库InfluxDB之备份和恢复策略_数据_07

顺带验证下上面备份的数据是否有问题,注意到我们恢复的是时间片段的数据备份,因此恢复的数据,应该会排除掉不再上面日期内的数据

大数据时序数据库InfluxDB之备份和恢复策略_数据_08

注意看前面serviceLoad里面只有一条数据, 即表明我们按照时间进行备份没啥问题

2. 恢复到存在的DB

看官网恢复的文档中,如果想将备份恢复到一个已经存在的database中时,并不是上面那么简单的就可以了,这里采用的一个策略是西安备份到一个临时的db中;然后将临时DB中的数据写入已存在的db中

具体的演示步骤如下 (注意本小结的执行可以直接依赖前面恢复的备份数据库中)

将备份恢复到已经存在的数据库 yhhblogNew 中

大数据时序数据库InfluxDB之备份和恢复策略_数据_09

进入 influx 控制台,执行拷贝和删除临时数据库

大数据时序数据库InfluxDB之备份和恢复策略_数据库_10

3. 保留策略已存在时,恢复

大数据时序数据库InfluxDB之备份和恢复策略_备份恢复_11

进入influx控制台,执行拷贝

大数据时序数据库InfluxDB之备份和恢复策略_数据库_12

4. 其他

官方还写了其他两种恢复方式,一个被废弃,一个离线的会导致数据丢失,也不推荐使用,而现在大部分的博文中备份和恢复都是这种过时的方案,不太友好,这里不详细叙述

III. 其他

1. 一灰灰Blog: https://liuyueyi.github.io/hexblog

一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛

2. 声明

尽信书则不如,已上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现bug或者有更好的建议,欢迎批评指正,不吝感激

  • 微博地址: 小灰灰Blog

大数据时序数据库InfluxDB之备份和恢复策略_数据库_13

举报

相关推荐

0 条评论