我对InfluxDB和Python与它的交互有以下问题。
InfluxDB安装在Windows7机器上,我还有InfluxDB,它安装在AWS ubuntu机器的docker容器中。我将InfluxDB端口从AWS机器转发到了我本地的Windows机器。
然后,使用Python库,我尝试通过以下方式连接到这两个influxdb -s:
client_aws = influxdb.InfluxDBClient('localhost', 8087, '', '', 'aws_db')
client_local = influxdb.InfluxDBClient('localhost', 8086, '', '', 'local_db')然后,我只想将数据从AWS机器写入我的本地机器:
query = 'select field_name from test_aws'
rs = client_aws.query(query, params={"epoch": "us"})
points = list(rs.get_points(measurement="test_aws"))
db_body = [ { "measurement": "test_local",
"time": query_time,
"fields": { field_name: points[0].get("field_name") } } ]
client_local.write_points(db_body)在那之后,我检查了我的本地InfluxDB,并检测到除了查询的执行之外,没有测量"test_local“
select field_name from test_local返回必要的数据。此外,我不能丢弃测量test_local,因为它对于本地InfluxDB不存在。
你能帮帮我吗?我的数据存储在哪里?怎么可能执行了查询却没有度量呢?
发布于 2017-10-19 04:42:25
可以执行查询,但不返回任何数据。
在尝试向目标数据库中插入数据之前,需要确保目标数据库存在于本地主机上。
在尝试将数据插入到db_local之前,添加一个对client.create_database('local_db')的调用,以确保数据库存在。
https://stackoverflow.com/questions/46282647
复制相似问题