InfluxDB的基本操作
一、InfluxDB操作方式
InfluxDB提供三种操作方式:
1)客户端命令行方式
2)HTTP API接口
3)各语言API库
二、InfluxDB数据库操作
如同MYSQL一样,InfluxDB提供多数据库支持,对数据库的操作也与MYSQL相同。
0)进入influxDB,输入命令:
influx
或
- InfluxDB HTTP API
8086
默认在端口上运行。因此,influx
将连接到端口8086
和localhost
默认。如果您需要更改这些默认值,请运行influx --help
。 - 该
-precision
参数指定任何返回的时间戳的格式/精度。在上面的示例中,rfc3339
告诉InfluxDB以RFC3339格式(YYYY-MM-DDTHH:MM:SS.nnnnnnnnnZ
)返回时间戳。
$ influx -precision rfc3339
Connected to http://localhost:8086 version 1.4.x
InfluxDB shell 1.4.x
>
1)显示数据库:
> show databases name: databases --------------- name telegraf _internal lir testDB testMyDb
2)新建数据库:
> create database test > show databases name: databases --------------- name telegraf _internal lir testDB testMyDb xk_name test
3)删除数据库
> drop database test > show databases name: databases --------------- name telegraf _internal lir testDB testMyDb xk_name
4)使用某个数据库
> use xk_name
Using database xk_name
三、InfluxDB数据表操作
在InfluxDB当中,并没有表(table)这个概念,取而代之的是MEASUREMENTS,MEASUREMENTS的功能与传统数据库中的表一致,
因此我们也可以将MEASUREMENTS称为InfluxDB中的表。
1)显示所有表
> SHOW MEASUREMENTS name: measurements ------------------ name weather
2)新建表
InfluxDB中没有显式的新建表的语句,只能通过insert数据的方式来建立新表。如下所示:
insert disk_free,hostname=server01 value=442221834240i 1435362189575692182
其中 disk_free 就是表名,hostname是索引,value=xx是记录值,记录值可以有多个,最后是指定的时间
执行后结果如下
> select * from disk_free name: disk_free --------------- time hostname value 1435362189575692182 server01 442221834240
3)删除表
> drop measurement disk_free > show measurements name: measurements ------------------ name weather
四、数据操作
1)增加数据
增加数据采用insert的方式,要注意的是 InfluxDB的insert中,表名与数据之间用逗号(,)分隔,
tag和field之间用 空格分隔,多个tag或者多个field之间用逗号(,)分隔。
> insert disk_free,hostname=server01 value=442221834240i 1435362189575692182 > select * from disk_free name: disk_free --------------- time hostname value 1435362189575692182 server01 442221834240
在这条语句中,disk_free是表名,hostname=server01是tag,属于索引,value=xx是field,这个可以随意写,随意定义。
2)查询数据
查询语句与SQL一样,在此不再赘述。
3)修改和删除数据
InfluxDB属于时序数据库,没有提供修改和删除数据的方法。
但是删除可以通过InfluxDB的数据保存策略(Retention Policies)来实现。
参考链接:
https://www.linuxdaxue.com/influxdb-write-data-by-http-api.html