【发布时间】:2021-05-06 10:36:53
【问题描述】:
当我尝试通过 Python 库在 influxdb 上运行简单的 SELECT 查询时遇到了一些问题。
我正在尝试运行以下查询:
influx_client.query('SELECT * FROM "measurements" LIMIT 10;')
当然,我在执行查询之前切换到相应的数据库(并连接到服务器)。我还尝试了查询的这些变体:
influx_client.query("SELECT * FROM \"measurements\" LIMIT 10;")
influx_client.query("SELECT * FROM 'measurements' LIMIT 10;")
influx_client.query('SELECT * FROM \'measurements\' LIMIT 10;')
influx_client.query('SELECT * FROM {0} LIMIT 10;'.format("measurements"))
influx_client.query("SELECT * FROM {0} LIMIT 10;".format("measurements"))
但是它们都会导致相同的问题。
我得到的结果(或更多错误)如下:
influxdb.exceptions.InfluxDBClientError: 403: {"error":"error authorizing query: myuser not authorized to execute statement 'SELECT * FROM \"measurements\" LIMIT 10', requires READ on True"}
我知道我的用户具有所需的权限,因为当使用 CLI 连接到数据库时,我可以执行查询。最重要的是,我使用 SHOW GRANTS 检查了权限,我可以看到所有要求都得到了满足(用户实际上确实拥有所有权限)。
我已经看到了一些类似的问题(例如在这个 issue 中)但是这不适合我的情况,因为我引用了查询。
环境信息:
- InfluxDB 版本:1.8.0
- InfluxDB-python 版本:5.3.1
- Python 版本:3.6.8
- 操作系统版本:CentOS 7
有什么想法吗?
【问题讨论】:
标签: python-3.x influxdb