Documentation

使用InfluxQL命令行工具

使用 InfluxQL 交互式终端执行 InfluxDB 的 InfluxQL 查询。

将数据库映射和保留策略到存储桶

InfluxQL 查询需要一个数据库和保留政策来查询数据。 在 InfluxDB 2.7 中,数据库和保留政策已被合并并替换为 buckets。 要使用 InfluxQL 查询 InfluxDB 2.7 的桶,首先将您的 DBRP 组合映射到相应的桶。

有关创建 DBRP 映射的信息,请参阅 使用 InfluxQL 查询数据

下载并安装 influx CLI

InfluxQL REPL 包含在 influx CLI (2.4+) 中。 下载并安装 influx CLI

开始InfluxQL shell

使用influx v1 shell 命令开始一个 InfluxQL shell 会话。

influx v1 shell

配置您的InfluxDB连接

连接到 InfluxDB 需要以下 influx v1 shell 命令:

使用以下方法之一将这些凭据提供给influx v1 shell命令:

influx CLI 允许您配置和存储多组连接凭证以供命令使用。 每组凭证是一个 CLI 配置。 使用 CLI 配置为 influx v1 shell 命令提供所需的凭证。

  1. 创建一个新的 CLI 配置并将其设置为 活动

    influx config create --config-name <config-name> \
      --host-url http://localhost:8086 \
      --org example-org \
      --token mY5up3Rs3CrE7t0k3N \
      --active
    
  2. 启动一个 InfluxQL shell

    influx v1 shell
    

所有 influx 命令使用由活动的 CLI 配置提供的凭据。有关管理 CLI 配置的更多信息,请参见 influx config 文档

使用 influx v1 shell 命令标志提供所需的凭证:

influx v1 shell \
  --host http://localhost:8086 \
  --org example-org \
  --token mY5up3Rs3CrE7t0k3N

使用环境变量提供所需的凭据。 如果环境变量已设置,influx CLI 将自动使用以下环境变量作为所需凭据:

  • INFLUX_HOST
  • INFLUX_ORGINFLUX_ORG_ID
  • INFLUX_TOKEN
export INFLUX_HOST=http://localhost:8086
export INFLUX_ORG=example-org
export INFLUX_TOKEN=mY5up3Rs3CrE7t0k3N

influx v1 shell

执行 InfluxQL 查询

在InfluxQL shell中,执行任何InfluxDB 2.7支持的InfluxQL查询。有关支持哪些查询的信息,请参见 InfluxDB 2.7中的InfluxQL支持

查看InfluxQL 文档 (1.11) 以获取有关查询语言的深入文档。

使用和配置显示格式

InfluxQL shell 使用不同的显示格式输出查询结果。format 辅助命令 用于指定使用哪种显示格式。

InfluxQL shell 默认使用 table 显示格式。
如果使用其他显示格式并且希望切换回 table 格式,请在 InfluxQL shell 中运行以下命令。

format table

表格格式的结果

表格格式以交互式表格格式输出结果。

InfluxQL shell table display format

结果是分页的。 使用 shift + up/down arrow 在页面之间导航。 使用 q 退出交互式表格显示。

配置表格显示格式

使用科学计数法

要使用科学记数法显示值,请使用scientific辅助命令来切换科学记数法。

指定时间戳精度或格式

要指定返回结果中时间戳的精度或格式,使用precision助手命令

-- Return results formatted as RFC3339 timestamps
precision rfc3339

-- Return results with second-precision unix timestamps
precision s

要使用 column 格式,请在 InfluxQL shell 中运行以下 命令

format column

列格式化结果

column格式以基于文本的列格式显示结果。

name: cpu
time            usage_user          usage_system
----            ----------          ------------
1.62767581e+09  5.476026754935672   2.5629805588360313
1.62767581e+09  0.4999999999972715  0.09999999999990905
1.62767581e+09  18.718718718689555  10.810810810692704
1.62767581e+09  6.500000000090222   3.2000000000343425
1.62767581e+09  4.1999999999336435  1.3999999999778812
1.62767581e+09  7.992007992122577   4.095904095946467
1.62767581e+09  0.3000000000054934  0.1000000000010732

配置列显示格式

指定时间戳精度

要指定结果中返回的时间戳的精度或格式,请使用 precision 辅助命令

-- Return results formatted as RFC3339 timestamps
precision rfc3339

-- Return results with second-precision unix timestamps
precision s

要使用csv格式,在InfluxQL shell中运行以下内容。

format csv

CSV格式的结果

csv格式以CSV格式显示结果。

name,time,usage_user,usage_system
cpu,1.62767582e+09,4.207038819798416,3.5194098893833914
cpu,1.62767582e+09,0.19980019980215585,0.19980019980215585
cpu,1.62767582e+09,14.914914914981258,14.114114114162232
cpu,1.62767582e+09,5.805805805828698,4.004004003985887
cpu,1.62767582e+09,2.5025025025339978,1.8018018018273916
cpu,1.62767582e+09,7.299999999874271,5.699999999930733
cpu,1.62767582e+09,0.09999999999647116,0.0999999999987449

配置CSV显示格式

指定时间戳精度

要指定结果中返回的时间戳的精度或格式,请使用 precision 助手命令

-- Return results formatted as RFC3339 timestamps
precision rfc3339

-- Return results with second-precision unix timestamps
precision s

要使用json格式,请在InfluxQL终端中运行以下内容。

format json

JSON格式的结果

CSV格式以JSON格式显示结果。

{
    "results": [
        {
            "series": [
                {
                    "columns": [
                        "time",
                        "usage_user",
                        "usage_system"
                    ],
                    "name": "cpu",
                    "values": [
                        [
                            1627675850,
                            4.601935685334947,
                            4.139868872973054
                        ],
                        [
                            1627675850,
                            0.3992015968099201,
                            0.2994011976074401
                        ],
                        [
                            1627675850,
                            7.599999999947613,
                            7.299999999995634
                        ],
                        [
                            1627675850,
                            0.3992015968098205,
                            0.4990019960088718
                        ],
                        [
                            1627675850,
                            9.59040959050348,
                            8.49150849158481
                        ],
                        [
                            1627675850,
                            0.2997002996974768,
                            0.39960039959966437
                        ],
                        [
                            1627675850,
                            9.590409590464631,
                            8.691308691326773
                        ]
                    ]
                }
            ],
            "statement_id": 0
        }
    ]
}

配置 JSON 显示格式

美观打印 JSON 输出

默认情况下,json 显示格式返回一个未格式化的 JSON 字符串。要格式化 JSON,请使用 pretty 辅助命令 切换 JSON 的漂亮打印。

指定时间戳精度

要指定结果中返回的时间戳的精度或格式,请使用 precision 辅助命令

-- Return results formatted as RFC3339 timestamps
precision rfc3339

-- Return results with second-precision unix timestamps
precision s

InfluxQL shell 辅助命令

InfluxQL shell 支持以下辅助命令:

清除

清除基于会话的设置,例如数据库。

退出

退出 InfluxQL 终端。

格式

指定数据展示格式。 InfluxQL 支持以下展示格式:

  • csv
  • json
  • (默认)
-- Display query output using column display
format column

更多信息,请参见 使用和配置显示格式

仓鼠

打印 Go gopher。

帮助

打印 InfluxQL shell 帮助选项。

历史

查看InfluxQL shell历史记录。

精度

指定时间戳的格式或精度。
使用以下选项之一:

  • rfc3339
  • h
  • m
  • s
  • 毫秒
  • u
  • ns (默认)
-- Set timestamp precision to seconds
precision s

漂亮

切换“美化打印”以显示 json 格式

退出

退出 InfluxQL 外壳

科学的

切换科学数字格式以用于table显示格式

使用

设置用于查询的数据库和保留策略(可选)。

-- Use the exampledb database
use exampledb

-- Use the exampledb database and examplerp retention policy
use exampledb.examplerp


Flux的未来

Flux 正在进入维护模式。您可以像现在一样继续使用它,而无需对您的代码进行任何更改。

阅读更多

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

InfluxDB 3 Open Source is now available for alpha testing, licensed under MIT or Apache 2 licensing.

我们将发布两个产品作为测试版的一部分。

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

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