InfluxDB:Export/Import 大量点从一个实例到另一个实例
InfluxDB: Export/Import large number of points form one instance to another
我在我们的一个客户场所安装了一个 InfluxDB 实例,但我无权访问。
- 当报告某些问题时,我需要确定一个 window 的时间(问题之前和之后),并为他们提供一个可以提取该 window 中所有数据的脚本。
- 该脚本应生成我的客户的一组导出数据
会和我分享。
然后我需要将这些数据导入到我的实例中进行分析。
- 我尝试使用 backup/restore 执行此操作,但似乎失败了,并显示数据库存在的错误。
我现在打算用
对于每次测量:
"influx -execute 'select * from ' -format csv -> measurement.txt
并将所有这些文件导出为 tar.gz。我仍然需要弄清楚如何将这些数据导入我的实例,但这应该不是问题。
有更好的方法吗?
通常 backup/restore 适用于您的用例。但是您无法将值恢复到现有数据库中。
备份:
influxd backup -portable -database telegraf <path-to-backup>
这是influxdb官方文档建议的恢复到现有数据库的方法
将现有数据库备份恢复到临时数据库。
influxd restore -portable -db telegraf -newdb telegraf_bak path-to-backup
将数据(使用 SELECT ... INTO 语句)旁加载到现有目标数据库中并删除临时数据库。
USE telegraf_bak
SELECT * INTO telegraf..:MEASUREMENT FROM /.*/ GROUP BY *
DROP DATABASE telegraf_bak
https://docs.influxdata.com/influxdb/v1.8/administration/backup_and_restore/#restore-examples
我在我们的一个客户场所安装了一个 InfluxDB 实例,但我无权访问。
- 当报告某些问题时,我需要确定一个 window 的时间(问题之前和之后),并为他们提供一个可以提取该 window 中所有数据的脚本。
- 该脚本应生成我的客户的一组导出数据 会和我分享。
然后我需要将这些数据导入到我的实例中进行分析。
- 我尝试使用 backup/restore 执行此操作,但似乎失败了,并显示数据库存在的错误。
我现在打算用 对于每次测量: "influx -execute 'select * from ' -format csv -> measurement.txt
并将所有这些文件导出为 tar.gz。我仍然需要弄清楚如何将这些数据导入我的实例,但这应该不是问题。
有更好的方法吗?
通常 backup/restore 适用于您的用例。但是您无法将值恢复到现有数据库中。
备份:
influxd backup -portable -database telegraf <path-to-backup>
这是influxdb官方文档建议的恢复到现有数据库的方法
将现有数据库备份恢复到临时数据库。
influxd restore -portable -db telegraf -newdb telegraf_bak path-to-backup
将数据(使用 SELECT ... INTO 语句)旁加载到现有目标数据库中并删除临时数据库。
USE telegraf_bak
SELECT * INTO telegraf..:MEASUREMENT FROM /.*/ GROUP BY *
DROP DATABASE telegraf_bak
https://docs.influxdata.com/influxdb/v1.8/administration/backup_and_restore/#restore-examples