基本概念
- database 数据库
- measurement 数据库中的表
- points 表里面的一行数据
- point 由时间戳(Time)、数据(field)、标签(tags)组成
- Time:每个数据记录时间,是数据库中的主索引(会自动生成)
- fields:各种记录值(没有索引的属性)也就是记录的值
- tags:各种有索引的属性
启动Influx
./influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242
influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -execute 'SHOW DATABASES'
influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -execute 'SELECT * FROM "h2o_feet" LIMIT 3' -database="NOAA_water_database" -precision=rfc3339
influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -format=column
influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -format=csv
influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -format=json
influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -format=json -pretty
显示购买的数据库名称
- 执行命令语句 show databases 使用该数据库
- 执行命令语句 use <该数据库的名称>
- 显示 Using databases 数据库名称
往数据库中插入表(measurement)
- 执行命令语句:
insert cpu_usage,ip=192.168.0.1 value=30 15226580942111 cpu_usage 代表表名,ip是tag索引,value=xx是记录值键值对,记录值可以有多个
- 显示所有的表
- 查询命令:show measurements
查询插入的数据
select * from cpu_usage
- 输入命令后显示出的内容
name: cpu_usage time ip value ---- -- ----- 15226580942111 192.168.0.1 30
往表中插入数据- 输入命令
INSERT cpu,host=serverA,region=us_west value=0.64 一个measurement为cpu,tag为host和region,测量值value为0.64的数据点已经写入数据库
- 查询刚插入的数据
SELECT “host”, “region”, “value” FROM cpu
- 输入命令后显示的界面 ``` > name: cpu time host region value
1564026380
serverA us_west 0.64```
注释:前面我们在写入数据点的时候没有提供时间戳。如果写入没有带时间戳的数据点,TSDB For InfluxDB®会在获取该点时,把本地当前时间分配给该数据点,作为该数据点的时间戳。这意味着您的时间戳跟上面的会有所不同。
写入另一种类型的数据,同一个measurement有两个field
- 输入命令 ``` INSERT temperature,machine=unit42,type=assembly external=25,internal=37
创建了表temperature,machine为tag-key,type和external为field-key
**删除数据库**
DROP DATABASE
**从索引中删除序列**
从单个测量中删除所有系列: DROP SERIES FROM “h2o_feet” 从单个测量中删除具有特定标记对的系列: DROP SERIES FROM “h2o_feet” WHERE “location” = ‘santa_monica’ 从数据库中的所有度量中删除系列中具有特定标记对的所有点: DROP SERIES WHERE “location” = ‘santa_monica’ 成功的DROP SERIES查询返回空结果。
**使用Delete删除系列**
删除与测量相关的所有数据h2o_feet: DELETE FROM “h2o_feet” 删除与测量相关的所有数据h2o_quality以及标记randtag等于的位置3: DELETE FROM “h2o_quality” WHERE “randtag” = ‘3’ 删除2016年1月1日之前发生的数据库中的所有数据: DELETE WHERE time < ‘2016-01-01’
**使用Drop measurement 删除测量值**
DROP MEASUREMENT
**创建保留策略**
CREATE RETENTION POLICY “one_day_only” ON “NOAA_water_database” DURATION 23h60m REPLICATION 1 DEFAULT
**修改保留策略**
创建策略 CREATE RETENTION POLICY “what_is_time” ON “NOAA_water_database” DURATION 2d REPLICATION 1
修改策略 ALTER RETENTION POLICY “what_is_time” ON “NOAA_water_database” DURATION 3w SHARD DURATION 2h DEFAULT
**删除保留策略**
DROP RETENTION POLICY ON
删除保留策略what_is_time的NOAA_water_database数据库: DROP RETENTION POLICY “what_is_time” ON “NOAA_water_database” ```