文档说明

使用InfluxQL Shell

使用InfluxQL交互式Shell在InfluxDB中执行InfluxQL查询。

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

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

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

下载并安装influx CLI

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

启动InfluxQL Shell

使用 influx v1 shell 命令 启动 InfluxQL 命令行会话。

influx v1 shell

配置您的 InfluxDB 连接

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

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

influx CLI 允许您配置和存储多个用于命令的凭据集。每套凭据都是一个 CLI 配置。使用 CLI 配置向 influx v1 shell 命令提供所需凭据。

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

    influx config create --config-name <config-name> \
      --host-url https://127.0.0.1:8086 \
      --org example-org \
      --token mY5up3Rs3CrE7t0k3N \
      --active
    
  2. 启动 InfluxQL 命令行

    influx v1 shell
    

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

使用 influx v1 shell 命令标志提供所需凭据

influx v1 shell \
  --host https://127.0.0.1:8086 \
  --org example-org \
  --token mY5up3Rs3CrE7t0k3N

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

  • INFLUX_HOST
  • INFLUX_ORGINFLUX_ORG_ID
  • INFLUX_TOKEN
export INFLUX_HOST=https://127.0.0.1:8086
export INFLUX_ORG=example-org
export INFLUX_TOKEN=mY5up3Rs3CrE7t0k3N

influx v1 shell

执行InfluxQL查询

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

查看 InfluxQL 文档(1.11) 以获取关于查询语言的详细文档。

使用和配置显示格式

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

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

format table

表格格式化结果

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

InfluxQL shell table display format

结果分页。使用 shift + 上/下箭头 在页面之间导航。使用 q 退出交互式表格显示。

配置表格显示格式

使用科学计数法

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

指定时间戳精度或格式

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

-- Return results formatted as RFC3339 timestamps
precision rfc3339

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

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

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外壳中运行以下命令。

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格式化的结果

json格式以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外壳支持以下辅助命令

clear

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

exit

退出InfluxQL外壳。

format

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

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

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

gopher

打印Go gopher。

help

打印InfluxQL外壳的帮助选项。

history

查看InfluxQL外壳的历史记录。

precision

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

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

pretty

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

quit

退出InfluxQL外壳

scientific

切换table显示格式的科学数字格式。

use

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

-- Use the exampledb database
use exampledb

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

这个页面有帮助吗?

感谢您的反馈!


Flux的未来

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

阅读更多

InfluxDB v3增强和InfluxDB Clustered现已正式上市

新功能包括更快的查询性能和管理工具的升级,推动了InfluxDB v3产品线的进步。InfluxDB Clustered现已全面上市。

InfluxDB v3性能与功能

InfluxDB v3产品线在查询性能方面取得了显著提升,并提供了新的管理工具。这些改进包括一个操作仪表板来监控您的InfluxDB集群健康状况,InfluxDB Cloud Dedicated中的单点登录(SSO)支持,以及用于令牌和数据库的新管理API。

了解v3的新增强功能


InfluxDB Clustered全面上市

InfluxDB Clustered现已全面上市,并为您在自管理堆栈中提供InfluxDB v3的强大功能。

与我们谈论InfluxDB Clustered