InfluxDB提供類SQL語法,如果熟悉SQL的話會非常容易上手。
本文就為大家介紹一下InfluxDB的基本操作。
InfluxDB提供類SQL語法,如果熟悉SQL的話會非常容易上手。
一、InfluxDB操作方式
InfluxDB提供三種操作方式:
1)客戶端命令行方式
2)HTTP API接口
3)各語言API庫
今天主要以命令行為例,為大家介紹下InfluxDB的基本操作,HTTP API接口和各種語言API庫會在以后的文章中為大家詳細介紹。
二、InfluxDB數據庫操作
如同MYSQL一樣,InfluxDB提供多數據庫支持,對數據庫的操作也與MYSQL相同。
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)來實現,這個會在以后的文章中講到。
五、series操作
series表示這個表里面的數據,可以在圖表上畫成幾條線,series主要通過tags排列組合算出來。
我們可以查詢表的series,如下所示:
> show series from mem key mem,host=ResourcePool-0246-billing07 mem,host=billing07
六、界面操作
InfluxDB還提供了管理界面,大大降低了入門難度,在啟動了InfluxDB服務之后,直接輸入 <IP>:8083 即可訪問界面。界面如下圖所示