购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2 InfluxDB软件包程序

通常,InfluxDB软件包会提供以下几个程序:

·influx:InfluxDB的命令行工具。

·influxd:InfluxDB的服务器程序。

·influx_inspect:InfluxDB的数据检查工具。

·influx_stress:InfluxDB的压力测试工具。

·influx_tsm:InfluxDB的数据库格式转换工具(将数据库从b1或bz1格式转换为tsm1格式)。

接下来,我们分别看一下每个程序的使用方式和参数。

2.2.1 influx介绍

influx是InfluxDB的命令行工具,用于通过命令行的形式访问InfluxDB服务。

注意 InfluxDB服务器程序版本和influx命令行程序版本必须相同,如果两者版本不相同,则查询时可能会出现解析错误的问题。

influx也支持代理访问方式,可通过HTTP_PROXY和HTTPS_PROXY环境变量设置相应的HTTP代理和HTTPS代理,如代码清单2-31所示。

代码清单2-31 HTTP代理和HTTPS代理配置示例


# HTTP协议
$ HTTP_PROXY=http://localhost:1234
# HTTPS协议
$ HTTPS_PROXY=https://localhost:1443

如果在某些主机上不希望通过代理访问InfluxDB服务,可以配置NO_PROXY环境变量,如代码清单2-32所示,如果使用“*”则会匹配所有主机。

代码清单2-32 NO_PROXY配置示例


$ NO_PROXY=123.45.67.89,123.45.67.90

下面再来看一下influx的基本语法和常用参数,influx的基本语法如代码清单2-33所示。

代码清单2-33 influx基本语法


influx [arguments]

influx支持以下参数:

·-version:显示程序版本信息。

·-host‘host name’:指定要连接的主机的主机名。

·-port‘port’:指定要连接的主机端口号。

·-socket‘unix domain socket’:以UNIX域socket方式连接InfluxDB。

·-database‘database name’:指定要连接的数据库名。

·-password‘password’:连接时用于认证的密码。

·-username‘username’:连接时用于认证的用户名。

·-ssl:启用HTTPS连接。

·-unsafeSsl:当使用HTTPS连接到集群时不使用SSL验证。

·-execute‘command’:执行命令。

·-type‘influxql|flux’:指定调用REPL时使用的查询语言。

·-format‘json|csv|column’:指定服务器响应内容的格式,支持JSON、CVS、COLUMN。

·-precision‘rfc3339|h|m|s|ms|u|ns’:指定时间戳的格式,支持rfc3339、h、m、s、ms、u、ns,默认格式为rfc3339。

·-consistency‘any|one|quorum|all’:指定写入一致性级别,支持any、one、quorum、all。

·-pretty:以阅读友好的方式显示JSON格式的内容。

·-import:从之前的备份文件中还原备份数据。

·-pps:设置数据导入时每秒允许导入多少条时序数据。默认值为0,不限制导入速率。

·-path:需要还原的备份文件的存储路径。

·-compressed:设置为true时,表示支持导入压缩格式的备份文件。

2.2.2 influxd介绍

influxd是InfluxDB的服务器守护进程,在默认安装情况下,不同操作系统环境下,InfluxDB配置文件所在的位置略有不同。例如:

·Linux:/etc/influxdb/influxdb.conf。

·Mac OS:/usr/local/etc/influxdb.conf。

还可以通过“influxd config”来直接创建InfluxDB配置文件,不过通过此方式创建的配置文件不带参数注释,创建方式如代码清单2-34所示。

代码清单2-34 创建InfluxDB配置文件


$ influxd config > /etc/influxdb/influxdb.generated.conf

可以通过--config参数加载指定配置文件启动InfluxDB服务,如代码清单2-35所示。

代码清单2-35 通过加载指定配置文件启动InfluxDB服务


$ sudo influxd --config /etc/influxdb/influxdb.generated.conf

除使用--config参数外,还可以通过加载环境变量指定的配置文件来启动InfluxDB服务,但需要提前确认环境变量是否存在,如代码清单2-36所示。

代码清单2-36 通过加载环境变量指定的配置文件启动InfluxDB服务


$ echo $INFLUXDB_CONFIG_PATH
/etc/influxdb/influxdb.conf
$ sudo influxd

在启动过程中,InfluxDB首先会检测--config参数是否存在,如果为空,则使用环境变量中指定的配置文件。

接着再来看一下influxd的基本语法和其支持的子命令,influxd的基本语法如代码清单2-37所示。

代码清单2-37 influxd基本语法


influxd [[command] [arguments]]

influxd支持以下子命令:

·backup:数据备份。

·config:显示influxd的默认配置信息。

·help:显示帮助信息。

·restore:还原之前通过backup命令备份的数据。

·run:运行程序,默认参数,可忽略。

·version:显示influxd程序的版本信息。

2.2.3 influx_inspect介绍

influx_inspect是InfluxDB的数据检查工具,可通过influx_inspect查看InfluxDB的TSM格式文件的内容,如代码清单2-38所示。

代码清单2-38 通过influx_inpsect查看TSM文件的内容


$ influx_inspect dumptsm -all /var/lib/influxdb/data/monitor/autogen/6/000000001-000000001.tsm
Summary:
    File: /var/lib/influxdb/data/monitor/autogen/6/000000001-000000001.tsm
    Time Range: 2019-08-26T19:01:00Z - 2019-08-26T19:03:00Z
    Duration: 2m0s   Series: 8   File Size: 1039

Index:

    Pos Min Time        Max Time        Ofs        Size        Key        Field
    1   2019-08-26T19:01:00Z    2019-08-26T19:03:00Z    5    36    cpu_usage,hostname=server1,region=us-west    core
    2   2019-08-26T19:01:00Z    2019-08-26T19:03:00Z    41    52
    cpu_usage,hostname=server1,region=us-west   percent
    3   2019-08-26T19:01:00Z    2019-08-26T19:03:00Z    93    36
......

influx_inspect的基本语法如代码清单2-39所示。

代码清单2-39 influx_inspect基本语法


influx_inspect [[command] [arguments]]

influx_inspect支持以下子命令:

·deletetsm:批量删除原始TSM文件。

·dumptsi:显示tsi1文件的底层细节信息。

·dumptsm:显示tsm1文件的底层细节信息。

·buildtsi:从tsm1数据中生成tsi1索引信息。

·help:显示帮助信息。

·export:导出数据。

·report:显示分片级别的数据信息。

·verify:验证TSM文件的完整性。

·verify-seriesfile:验证时序文件的完整性。

2.2.4 influx_stress介绍

influx_stress是InfluxDB的压力测试工具,但从v1.2.0版本开始已经弃用,不再推荐使用,推荐使用influx-stress和influxdb-comparisons进行压测,相关链接如代码清单2-40所示。

代码清单2-40 influx-stress和influxdb-comparisons链接地址


influx-stress:https://github.com/influxdata/influx-stress
influxdb-comparisons:https://github.com/influxdata/influxdb-comparisons

2.2.5 influx_tsm介绍

influx_tsm是InfluxDB的数据库格式转换工具,它可以将数据库从b1或bz1格式转换为tsm1格式,其中b1和bz1为InfluxDB 0.10之前版本支持的格式。influx_tsm命令的基本语法如代码清单2-41所示。

代码清单2-41 influx_tsm命令的基本语法


influx_tsm [options] <data-path>

influx_tsm命令支持以下选项:

·-backup string:备份文件的存放位置,但不能在当前数据的存储目录中备份。

·-dbs string:以逗号分隔的要转换的数据库列表,默认转换所有数据库的数据。

·-debug string:在给定的HTTP地址上开启debug功能。

·-interval duration:打印状态更新的频率,默认为5秒。

·-nobackup:禁用数据库备份(不推荐)。

·-parallel:启用并行转换。

·-profile string:CPU Profile文件的存储位置。

·-sz uint:单个TSM文件的大小(默认值为2147483648)。

·-y:不询问,直接转换。 qrSsAYV2BKKyhn22vZSG6EwJMmbIzcCrmWNMi+wdpE+KfRxsnDGOXwjwc6Vg4l6A

点击中间区域
呼出菜单
上一章
目录
下一章
×