一、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