influxdb CLI/SHELL
Launch influx
注意:CLI和InfluxDB版本应该相同。如果没有,它可能导致解析问题与查询。
$ influx Connected to http://localhost:8086 version 1.0.x InfluxDB shell 1.0.x
influx Arguments
有几个参数,你可以传入流入时启动。使用$ influx --help列出它们。下面的列表简要讨论了每个选项。我们在本节结尾处提供有关-execute,-format和-import的详细信息。
-compressed 如果导入文件已压缩,请设置为true。与-import一起使用。 -consistency 'any|one|quorum|all' 设置写一致性级别。 -database 'database name' The database to which influx connects. -execute 'command' Execute an InfluxQL command and quit. See -execute. -format 'json|csv|column'
-host 'host name' 连接的主机。默认情况下,InfluxDB在localhost上运行。 -import 从文件导入新数据或从文件导入以前导出的数据库。 -password 'password' 密码influx用于连接到服务器。如果将其留空(“password”),influx将提示输入密码。 -path 要导入的文件的路径。与-import一起使用。 -port 'port #' 连接的端口。默认情况下,InfluxDB在端口8086上运行 -pps 每秒允许导入的点数。默认情况下,pps为零,并且influx不会限制导入。与-import一起使用。 -precision 'rfc3339|h|m|s|ms|u|ns' 指定时间戳的格式/精度:rfc3339(YYYY-MM-DDTHH:MM:SS.nnnnnnnnnZ),h(小时),m(分钟),s(秒),ms(毫秒) (纳秒)。精度默认为纳秒。 注意:将精度设置为rfc3339(-precision rfc3339)与-execute选项一起使用,但它不适用于-import选项。所有其他精度格式(例如h,m,s,ms,u和ns)与-execute和-import选项 -pretty 打开json格式的漂亮打印。 -ssl 对请求使用https -username 'username' 用户名influx用于连接到服务器。 -version Display the InfluxDB version and exit
示例 1 、执行InfluxQL命令并退出with -execute
执行不需要数据库规范的查询: $ influx -execute 'SHOW DATABASES' name: databases --------------- name NOAA_water_database _internal telegraf pirates 执行需要数据库规范的查询,并更改时间戳精度: $ influx -execute 'SELECT * FROM "h2o_feet" LIMIT 3' -database="NOAA_water_database" -precision=rfc3339 name: h2o_feet -------------- time level description location water_level 2015-08-18T00:00:00Z below 3 feet santa_monica 2.064 2015-08-18T00:00:00Z between 6 and 9 feet coyote_creek 8.12 2015-08-18T00:06:00Z between 6 and 9 feet coyote_creek 8.005
示例2 使用-format指定服务器响应的格式
默认格式为column:
$ influx -format=column
[...]
> SHOW DATABASES
name: databases
---------------
name
NOAA_water_database
_internal
telegraf
pirates
将格式更改为csv:
$ influx -format=csv
[...]
> SHOW DATABASES
name,name
databases,NOAA_water_database
databases,_internal
databases,telegraf
databases,pirates
将格式更改为json:
$ influx -format=json
[...]
> SHOW DATABASES
{"results":[{"series":[{"name":"databases","columns":["name"],"values":[["NOAA_water_database"],["_internal"],["telegraf"],["pirates"]]}]}]}
将格式更改为json并打开漂亮的打印: 生产环境尽量不要用,影响带宽
$ influx -format=json -pretty
示例三 使用-import从文件导入
数据导入文件包含两个部分:
DDL(数据定义语言):包含用于创建相关数据库和管理保留策略的InfluxQL命令。如果您的数据库和保留策略已存在,你的文件可以跳过此部分。
DML(数据操作语言):列出相关数据库和(如果需要)保留策略,并包含行协议中的数据。
Example:
File (datarrr.txt):
# DDL CREATE DATABASE pirates CREATE RETENTION POLICY oneday ON pirates DURATION 1d REPLICATION 1 # DML # CONTEXT-DATABASE: pirates # CONTEXT-RETENTION-POLICY: oneday treasures,captain_id=dread_pirate_roberts value=801 1439856000 treasures,captain_id=flint value=29 1439856000 treasures,captain_id=sparrow value=38 1439856000 treasures,captain_id=tetra value=47 1439856000 treasures,captain_id=crunch value=109 1439858880
Command:
$influx -import -path=datarrr.txt -precision=s
结果输出
Results: 2015/12/22 12:25:06 Processed 2 commands 2015/12/22 12:25:06 Processed 5 inserts 2015/12/22 12:25:06 Failed 0 inserts
注意:对于大型数据集,influx每100,000个点写出一个状态消息。例如:
2015/08/21 14:48:01 Processed 3100000 lines. Time elapsed: 56.740578415s. Points per second (PPS): 54634
-import注意事项:
1 、允许数据库通过使用-pps设置导入允许的每秒点数来提取点。默认情况下,pps为零,并且influx不会限制导入 2、 导入使用.gz文件,-compressed 选项 在命令中 3 、在数据文件中包含时间戳。 InfluxDB将为没有时间戳的点分配相同的时间戳。这可能导致意外的覆盖行为。 4 、 如果您的数据文件有超过5000点,可能需要将该文件拆分为几个文件,以便批量写入您的数据到InfluxDB。我们建议分成5,000到10,000点的分数。较小的批处理和更多的HTTP请求将导致次优的性能。默认情况下,HTTP请求在五秒钟后超时。 InfluxDB仍将尝试在该时间后写入点,但不会确认它们已成功写入。
Note: For how to export data from InfluxDB version 0.8.9, see Exporting from 0.8.9.
三 influxdb 命令
在CLI中输入可用命令的部分列表的帮助。
下面的列表简要讨论了每个命令
auth 提示您输入用户名和密码。 influx在查询数据库时使用这些凭据。 connect <host:port> 连接到不同的服务器而不退出shell。默认情况下,influx连接到localhost:8086。如果不指定主机或端口,则influx将采用 的属性的默认设置。
浙公网安备 33010602011771号