1、資料構成
INSERT cpu_load_short,host=server01,region=us-west value=0.64,value2=0.86 1434055562000000000
第一部分:“cpu_load_short,host=server01,region=us-west”
第一部分稱為key,key中包含了measurement name(類似表)和tags(tags又分為tag key和tag value,tags可以有多個)
注意:在tag value中的空格應以“”加上空格表示,tags中的值必須是string類型,其實是起到索引的作用
第二部分:“value=0.64,value2=0.86”
第二部分稱為Field,同樣和tags的形式相同,都是鍵值對的形式,但是tags中的值必須是string類型,而Field中的值可以為Integer、float、Boolean、string類型,
若為Integer類型,則值後必須加“i”,否則該值為float類型,
比如value=23意味着這個值23是float類型,
而value=23i,意味着值23是Integer類型。
Boolean類型的值的表示方式有很多,直接寫成:t, T, true, TRUE, f, F, false或 FALSE都可以。
第三部分(可選):“1434055562000000000”
第三部分稱為Timestamp,是時間戳,如果該部分省略,則預設将目前時間的時間戳插入資料庫,否則按照使用者輸入的時間戳插入。
注意:influxdb預設使用UTC時區展示資料
2、建立及使用資料庫
CREATE DATABASE "testDB" --建立資料庫
show databases --展示所有資料庫
use testDB使用 --資料庫
3、增删改查指令
查詢表資訊
SHOW MEASUREMENTS --查詢目前資料庫中含有的表
SHOW FIELD KEYS --檢視目前資料庫所有表的字段
SHOW series from pay --檢視key資料
SHOW TAG KEYS FROM "pay" --檢視key中tag key值
SHOW TAG VALUES FROM "pay" WITH KEY = "merId" --檢視key中tag 指定key值對應的值
SHOW TAG VALUES FROM cpu WITH KEY IN ("region", "host") WHERE service = 'redis'
DROP SERIES FROM <measurement_name[,measurement_name]> WHERE <tag_key>='<tag_value>' --删除key
SHOW CONTINUOUS QUERIES --檢視連續執行指令
SHOW QUERIES --檢視最後執行指令
KILL QUERY <qid> --結束指令
SHOW RETENTION POLICIES ON mydb --檢視保留資料
查詢資料
SELECT * FROM /.*/ LIMIT 1 --查詢目前資料庫下所有表的第一行記錄
select * from pay order by time desc limit 2
select * from db_name."POLICIES name".measurement_name --指定查詢資料庫下資料保留中的表資料 POLICIES name資料保留
删除資料
delete from "query" --删除表所有資料,則表就不存在了
drop MEASUREMENT "query" --删除表(注意會把資料保留删除使用delete不會)
DELETE FROM cpu
DELETE FROM cpu WHERE time < '2000-01-01T00:00:00Z'
DELETE WHERE time < '2000-01-01T00:00:00Z'
DROP DATABASE “testDB” --删除資料庫
DROP RETENTION POLICY "dbbak" ON mydb --删除保留資料為dbbak資料
DROP SERIES from pay where tag_key='' --删除key中的tag
SHOW SHARDS --檢視資料存儲檔案
DROP SHARD 1
SHOW SHARD GROUPS
SHOW SUBSCRIPTIONS
4、函數使用
select * from pay order by time desc limit 2
select mean(allTime) from pay where time >= today() group by time(10m) time_zone(+8)
select * from pay time_zone(+8) limit 2
SELECT sum(allTime) FROM "pay" WHERE time > now() - 10s
select count(allTime) from pay where time > now() - 10m group by time(1s)
5、使用者管理指令
SHOW USERS
CREATE USER jdoe WITH PASSWORD '1337password' -- Create a normal database user.
CREATE USER jdoe WITH PASSWORD '1337password' WITH ALL PRIVILEGES -- Create an admin user.
REVOKE ALL PRIVILEGES FROM jdoe revoke admin privileges from jdoe
REVOKE READ ON mydb FROM jdoe -- revoke read privileges from jdoe on mydb
SHOW GRANTS FOR jdoe -- show grants for jdoe
GRANT ALL TO jdoe -- grant admin privileges
GRANT READ ON mydb TO jdoe -- grant read access to a database
DROP USER jdoe