文档文档

使用 InfluxDB v1 HTTP 查询 API 和 InfluxQL 查询数据

使用 InfluxDB v1 HTTP 查询 API 和 InfluxQL 查询 InfluxDB Clustered 中的数据。

以下示例使用 cURL 向 InfluxDB v1 HTTP API 发送 HTTP 请求,但您可以使用任何 HTTP 客户端。

InfluxQL 功能支持

InfluxQL 正在重新架构以与 InfluxDB 3 存储引擎协同工作。此过程正在进行中,某些 InfluxQL 功能仍在实施中。有关 InfluxQL 功能当前实施状态的信息,请参阅 InfluxQL 功能支持

使用 v1 /query 端点和 GET 请求方法使用 InfluxQL 查询数据

GET https://cluster-host.com/query

在您的请求中提供以下信息

  • 标头
    • Authorization: Bearer DATABASE_TOKEN
  • 查询参数
    • db: 要查询的数据库
    • rp: 可选:要查询的保留策略
    • q: URL 编码的 InfluxQL 查询
curl --get https://cluster-host.com/query \
  --header "Authorization: Bearer 
DATABASE_TOKEN
"
\
--data-urlencode "db=
DATABASE_NAME
"
\
--data-urlencode "q=SELECT * FROM home"

替换以下配置值

  • DATABASE_NAME: 要查询的数据库的名称。
  • DATABASE_TOKEN: 具有读取访问指定数据库权限的数据库令牌

使用用户名和密码进行身份验证

如果使用基本身份验证或查询字符串身份验证(用户名和密码)与 v1 HTTP 查询 API 交互,请提供以下凭据

  • username: 任意字符串(InfluxDB Clustered 忽略用户名)
  • password: 具有读取访问指定数据库权限的数据库令牌
curl --get https://cluster-host.com/query \
  --header "Authorization: Basic ignored:
DATABASE_TOKEN
"
\
--data-urlencode "db=
DATABASE_NAME
"
\
--data-urlencode "q=SELECT * FROM home"
curl --get https://cluster-host.com/query \
  --data-urlencode "u=ignored" \
  --data-urlencode "p=
DATABASE_TOKEN
"
\
--data-urlencode "db=
DATABASE_NAME
"
\
--data-urlencode "q=SELECT * FROM home"

以 JSON 或 CSV 格式返回结果

默认情况下,/query 端点以 JSON 格式返回结果,但它也可以以 CSV 格式返回结果。要以 CSV 格式返回结果,请包含带有 application/csvtext/csv MIME 类型的 Accept 标头

curl --get https://cluster-host.com/query \
  --header "Authorization: Token 
DATABASE_TOKEN
"
\
--header "Accept: application/csv" \ --data-urlencode "db=
DATABASE_NAME
"
\
--data-urlencode "q=SELECT * FROM home"

此页内容是否有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像目前一样使用它,而无需对代码进行任何更改。

阅读更多

InfluxDB 3 开源版本现已公开 Alpha 测试

InfluxDB 3 开源版本现已可用于 Alpha 测试,根据 MIT 或 Apache 2 许可协议获得许可。

我们正在发布两个产品作为 Alpha 测试的一部分。

InfluxDB 3 Core,是我们的新开源产品。它是一个用于时间序列和事件数据的最新数据引擎。InfluxDB 3 Enterprise 是一个商业版本,它建立在 Core 的基础上,增加了历史查询能力、读取副本、高可用性、可扩展性和细粒度的安全性。

有关如何开始使用的更多信息,请查看