文档说明

使用 InfluxQL shell

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

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

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

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

下载并安装 influx CLI

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

启动 InfluxQL shell

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

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 shell

    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 Cloud 支持的任何 InfluxQL 查询。有关支持的查询信息,请参阅InfluxDB Cloud 中的 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 格式的结果

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 命令行支持以下辅助命令

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 集群版现已上市

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

InfluxDB v3 性能和功能

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

了解新的 v3 增强功能


InfluxDB 集群版上市

InfluxDB 集群版现已上市,并为您在自管理堆栈中提供了 InfluxDB v3 的功能。

与我们讨论 InfluxDB 集群版

InfluxDB Cloud 由 TSM 驱动