InfluxDB 数据备份与恢复方式进行迁移

由于公司有一套 Grafana + InfluxDB 的监控系统,但由于某种原因需要做服务相关的迁移工作,而原有的历史监控数据希望也保留下来,所有就诞生了此篇,通过工作中实际的操作进行归档整理记录,方便后续的查阅。

数据库备份

命令格式

1
influxd backup -database [name] [path-to-backup]

更多的使用方式可以利用命令 influxd help 进行查看进行举一反三。

示例

1
influxd backup -database metric ./data

由于我这里的 InfluxDB 的版本为 v1.1.1 所以需要指定数据库进行进行备份;可能新版的不需要指定就可以默认备份所有的。

数据库恢复

1
influxd restore -database metric -metadir /var/lib/influxdb/meta -datadir /var/lib/influxdb/data ./data

注意:恢复数据的时候 InfluxDB 是支持版本兼容的(但可能不是全部,我恢复的版本为 vv1.5.4 ),不同的版本的话具体情况具体分析吧!

  • -database - 数据库名称
  • -metadir - InfluxDB 存放元数据目录的目录,可以查看 /etc/influxdb/influxdb.conf 配置查阅
  • -datadir - InfluxDB 存放真正数据的目录,可以查看 /etc/influxdb/influxdb.conf 配置查阅

重启生效

以上命令执行完毕之后请一定要重新启动方能生效,重启之后我们就能利用相应的工具查看数据库信息了。

推荐 InfluxDB 相关监控系统

  • chronograf - 官方自带的监控工具,还算比较好用
  • grafana - 一款开源的监控系统,比较流行

参考资料

https://www.influxdata.com/blog/new-features-in-open-source-backup-and-restore/