所以基本上我想在命令行中将数据库从influxdb导出为csv格式。
我在命令行中输入以下命令:
influx -database 'RoadMonitoringDB' -execute 'select * from vehicle' -format 'csv' > test.csv
它应该正确地将其导出到csv文件中,但是我现在得到的是:
未知参数:* from vehicle'-format'csv'
这里出了什么问题?因为当我键入influx -help
时,命令应如下所示:
涌入-数据库'指标'-执行'从CPU选择*'-格式'json'-漂亮
任何答案都非常有帮助。预先谢谢你:)
答案 0 :(得分:1)
从 CSV 中删除单引号,它有效
$ influx -database 'RoadMonitoringDB' -execute 'select * from vehicle' -format 'csv' > test.csv
但在结果中,时间戳将如下所示:
1204554500000000000
所以要获取 RFC3339 格式的时间戳,如下所示:
2021-06-06T00:00:00
$ influx -precision 'rfc3339' -database 'RoadMonitoringDB' -execute 'select * from vehicle' -format 'csv' > test.csv
答案 1 :(得分:0)
您使用的是哪个版本? 我刚刚在1.7.6上进行了检查,效果很好:
[root@mon-01 ~]# influx -version
InfluxDB shell version: 1.7.6
Enter an InfluxQL query
[root@mon-01 ~]# influx -precision 'rfc3339' -database 'myMetrics' -execute 'select * from up' -format 'csv' >up.txt
顺便说一句--precision 'rfc3339'
仅用于获取可读的时间戳。
答案 2 :(得分:0)
我比较了我的做法,我发现的唯一区别是:
你正在写:
-format 'csv' > test.csv
我把它写成:
-format csv > test.csv