InfluxDB基础操作
基础操作
-
连接
[root@localhost ~]# influx -precision rfc3339 Connected to http://localhost:8086 version 1.8.0 InfluxDB shell version: 1.8.0 >
precision
参数表明了任何返回的时间戳的格式和精度,在上面的例子里,rfc3339
是让InfluxDB返回RFC339格式(YYYY-MM-DDTHH:MM:SS.nnnnnnnnnZ)的时间戳。 -
登录验证
> auth username: icms password: icms@576576
-
操作数据库
# 创建用户 create user "icms" with password 'icms@576576' with all privileges # 创建数据库和保留策略RPs # WITH DURATION 2d 表示创建保留策略为2天且名称为NAME "cache_policy_2d" # 复制片参数(REPLICATION 1)是必须的,但是对于单个节点的InfluxDB实例,复制片只能设为1 # NAME "cache_policy_2d" 保留策略的名称 CREATE DATABASE "ICMS_CACHE" WITH DURATION 2d REPLICATION 1 SHARD DURATION 1h NAME "cache_policy_2d"
WITH
,DURATION
,REPLICATION
,SHARD DURATION
和NAME
子句是可选的用来创建与数据库相关联的单个保留策略。如果您没有在WITH
之后指定其中一个子句,将默认为autogen
保留策略。创建的保留策略将自动用作数据库的默认保留策略。一个成功的
CREATE DATABASE
查询返回一个空的结果。如果您尝试创建已存在的数据库,InfluxDB什么都不做,也不会返回错误。# 显示所有数据库 > show databases name: databases name ---- _internal NFDAS_CACHE ICMS_CACHE # 显示保留策略 show retention policies on "db_name" # 使用指定数据库 > use ICMS_CACHE Using database ICMS_CACHE # 显示所有的表(类似mysql的table) > show measurements name: measurements name ---- DevPropData # 显示tags 字段 > show tag keys on ICMS_CACHE from DevPropData name: DevPropData tagKey ------ AreaName DevName # 显示field 字段 > show field keys on ICMS_CACHE from DevPropData name: DevPropData fieldKey fieldType -------- --------- Alarm integer AreaId integer DevId integer FloorNo integer Interval integer N1 float >
说明:
_internal
数据库是用来存储InfluxDB内部的实时监控数据的。 -
增删改查(CU-rd)
# 操作数据库 > use ICMS_CACHE Using database ICMS_CACHE # 在查询数据之前 建议先设置控制台时间显示格式化 > precision rfc3339 # 按时间排序查询top10数据 需要添加时区设置 tz('Asia/Shanghai'),否则查询的数据不准确 > select * from DevPropData order by time desc limit 10 tz('Asia/Shanghai') name: DevPropData time Alarm DevId DevName FloorNo Interval ---- ----- ----- ------- ------- -------- 2020-07-22T10:52:00.000359379+08:00 1 1 403A 4 30 2020-07-22T10:51:30.000251776+08:00 1 1 403A 4 30 2020-07-22T10:51:00.000522171+08:00 1 1 403A 4 30 2020-07-22T10:50:30.000343237+08:00 1 1 403A 4 30 2020-07-22T10:50:00.000213782+08:00 1 1 403A 4 30 2020-07-22T10:49:30.000360242+08:00 1 1 403A 4 30 2020-07-22T10:49:00.000293949+08:00 1 1 403A 4 30 2020-07-22T10:48:30.000312107+08:00 1 1 403A 4 30 2020-07-22T10:48:00.00023421+08:00 1 1 403A 4 30 2020-07-22T10:47:30.000334161+08:00 1 1 403A 4 30 # 按fields字段查询 ,fields 需要添加双引号 > select * from DevPropData where "DevId"=1 limit 1 name: DevPropData time Alarm AreaId AreaName DevId DevName FloorNo Interval ---- ----- ------ -------- ----- ------- ------- -------- 2020-07-21T14:36:30.0008914Z 1 5 B栋 1 403A 4 30 > # 按fields 查询指定指标 > SELECT "DevId" , "AreaId", "AreaName" FROM DevPropData where "DevId"=1 limit 1 name: DevPropData time DevId AreaId AreaName ---- ----- ------ -------- 2020-07-21T14:36:30.0008914Z 1 5 B栋 > # 添加数据
有疑问加站长微信联系(非本文作者)