influxdb 基本操作

一、InfluxDB操作方式

InfluxDB提供三种操作方式:

1)客户端命令行方式

2)HTTP API接口

3)各语言API库

 

二、InfluxDB数据库操作

如同MYSQL一样,InfluxDB提供多数据库支持,对数据库的操作也与MYSQL相同。

1、查看数据库:

> show databases;
name: databases
name
----
_internal
default

2、新建数据库

> create database test
> show databases
name: databases
name
----
__internal
default
test

3、删除数据库

> drop database test

4、进入数据库

> use test

三、InfluxDB数据表操作

在InfluxDB当中,并没有表(table)这个概念,取而代之的是MEASUREMENTS,MEASUREMENTS的功能与传统数据库中的表一致,因此我们也可以将MEASUREMENTS称为InfluxDB中的表

1、显示表信息

> SHOW MEASUREMENTS
name: measurements
------------------
name
weather

2、新建表

InfluxDB中没有显式的新建表的语句,只能通过insert数据的方式来建立新表

#使用命令行创建
> insert weather,altitude=1000,area=北 temperature=11,humidity=-4

#使用http-api创建
zhengws@ubuntu:~/Downloads$ curl -i -XPOST 'http://localhost:8086/write?db=zws' --data-binary 'weather,altitude=1001,area=南 temperature=12,humidity=-5'
HTTP/1.1 204 No Content
Content-Type: application/json
Request-Id: 2524f870-68a8-11e7-800d-000000000000
X-Influxdb-Version: 1.2.4
Date: Fri, 14 Jul 2017 15:21:44 GMT

3、表查询

1、命令行查询
> select * from weather; name: weather time altitude area humidity temperature ---- -------- ---- -------- ----------- 1500045503532011423 1000 北 -4 11 1500045704506415754 1001 南 -5 12 > select * from weather order by time desc ; name: weather time altitude area humidity temperature ---- -------- ---- -------- ----------- 1500045704506415754 1001 南 -5 12 1500045503532011423 1000 北 -4 11
2、curl 方式查询:
curl -G 'http://localhost:8086/query?pretty=true' --data-binary 'db=zws' --data-urlencode 'q=select * from weather order by time desc' { "results": [ { "statement_id": 0, "series": [ { "name": "weather", "columns": [ "time", "altitude", "area", "humidity", "temperature" ], "values": [ [ "2017-07-14T15:21:44.506415754Z", "1001", "", -5, 12 ], [ "2017-07-14T15:18:23.532011423Z", "1000", "", -4, 11 ] ] } ] } ] }

4、查看表默认保留策略

> show retention policies on zws;
name    duration shardGroupDuration replicaN default
----    -------- ------------------ -------- -------
autogen 0s       168h0m0s           1        true

5、创建新的Retention Policies

> create retention policy "zws_policy" on zws duration 30d replication 1 default
> show retention policies on zws;
name       duration shardGroupDuration replicaN default
----       -------- ------------------ -------- -------
autogen    0s       168h0m0s           1        false
zws_policy 720h0m0s 24h0m0s            1        true

1. zws_policy:策略名
2. zws:具体的数据库名
3. 30d:保存30天,30天之前的数据将被删除
它具有各种时间参数,比如:h(小时),w(星期)
4. REPLICATION 1:副本个数,这里填1就可以了
5. DEFAULT 设为默认的策略

6、修改Retention Policies

> alter retention policy "zws_policy" on zws duration 3w default

> show retention policies on zws;
name       duration shardGroupDuration replicaN default
----       -------- ------------------ -------- -------
autogen    0s       168h0m0s           1        false
zws_policy 504h0m0s 24h0m0s            1        true

7、删除Retention Policies

> drop retention policy "zws_policy" on zws
> show retention policies on zws;
name    duration shardGroupDuration replicaN default
----    -------- ------------------ -------- -------
autogen 0s       168h0m0s           1        false

 

posted @ 2017-07-14 13:50  漫舞沧海  阅读(419)  评论(0编辑  收藏  举报